我想将用户凭据发送到以下url:http://myurl/authenticate
"login":{"username": "JohnDoe","password": "eoDnhoJ" }
{
" r e s u l t " : " S u c c e s s " ,
"response": "Users Session ID"
}
public interface APIService {
@POST("/authenticate")
@FormUrlEncoded
Call<Login> savePost(@Field("username") String username,
@Field("password") String password);
}
public class ApiUtils {
private ApiUtils() {}
public static final String BASE_URL = "http://myurl/";
public static APIService getAPIService() {
return RetrofitClient.getClient(BASE_URL).create(APIService.class);
}
}
@SerializedName("username")
@Expose
private String username;
@SerializedName("password")
@Expose
private String password;
//getters and setters
}
public class RetrofitClient {
private static Retrofit retrofit = null;
public static Retrofit getClient(String baseUrl) {
if (retrofit==null) {
retrofit = new Retrofit.Builder()
.baseUrl(baseUrl)
.addConverterFactory(GsonConverterFactory.create())
.build();
}
return retrofit;
}
}
public class LoginActivity extends AppCompatActivity {
private EditText usernameEditText,passwordEditText;
private Button button;
private APIService mAPIService;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
usernameEditText=(EditText)findViewById(R.id.username);
passwordEditText=(EditText)findViewById(R.id.password);
button=(Button)findViewById(R.id.signup);
mAPIService = ApiUtils.getAPIService();
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String uname=usernameEditText.getText().toString();
String pass=passwordEditText.getText().toString();
if(TextUtils.isEmpty(uname)){
Toast.makeText(LoginActivity.this, "Username cannot be empty", Toast.LENGTH_SHORT).show();
return;
}
if(TextUtils.isEmpty(pass)){
Toast.makeText(LoginActivity.this, "Password cannot be empty", Toast.LENGTH_SHORT).show();
return;
}
if(pass.length()<4){
Toast.makeText(LoginActivity.this, "Password should be greater than four characters", Toast.LENGTH_SHORT).show();
return;
}
sendPost(uname, new StringBuilder(uname).reverse().toString());
}
});
}
public void sendPost(String username, String password) {
mAPIService.savePost(username, password).enqueue(new Callback<Login>() {
@Override
public void onResponse(Call<Login> call, Response<Login> response) {
if(response.isSuccessful()) {
showResponse(response.body().toString());
Log.i("Pritish", "post submitted to API." + response.body().toString());
Intent intent=new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent);
finish();
}
}
@Override
public void onFailure(Call<Login> call, Throwable t) {
Log.e("Pritish", "Unable to submit post to API.");
}
});
}
public void showResponse(String response) {
Log.i("Abbu",response);
}
}
而不是follwing代码
@POST("/authenticate")
@FormUrlEncoded
Call<Login> savePost(@Field("username") String username,
@Field("password") String password);
使用此代码
@POST("/authenticate")
Call<Login> savePost(@Query("username") String username,
@Query("password") String password);
我使用reform连接到一个API,该API在每个响应中包含一个惟一的令牌。这个令牌必须包含在下一个请求中。这意味着我需要在发出下一个请求之前等待请求的响应。 在改造中是否有内置机制来实现这一目标?如果不是,推荐的方法是什么?请注意,我使用的是异步改造方法和版本 1.9。拦截器用于读取令牌并自动将其添加到下一个请求中,这非常有效。当两个请求非常接近时,就会出现问题,因此第二个请求最终使用过时的令牌
一、会员余额 1、商城订单支出:指该商场目前支出的订单金额数。 2、商城订单退还:指该商场目前的退款金额。 3、兑换:指该商场兑换出的金额。 4、充值:指所有会员的充值金额。 5、调整:指在会员列表中账户调整的调整余额做的调整的显示。 6、提现:指会员的提现总额。 7、提现退还:指会员提现后退还的金额。 8、查看会员的具体信息:此列表是以前改动后的具体展示以及说明。 会员昵称(指某个改动信息的昵称
检查这个的步骤 添加相关信息如下,我正在设置show_mature和newsletter_subscribedtrue 预期:将show_mature和newsletter_subscribed值设置为true实际:show_mature和newswetter_sSubscribed的值为false 如果有人能让我知道为什么会发生这种情况,我会非常感激吗?谢谢
我尝试设置一个完整的路径,如: 但在这里,reverfit没有看到路径实际上是完整的URL,并且正在尝试下载 有任何提示,我可以如何使用这样的动态url改造?
你的企业已经创建并注册成功了,现在,你要做的是让企业成员加入到企业中。 在正式邀请之前,你需要先进行企业通讯录的导入。它不仅可以帮你快速组建组织架构,更能提高邀请成员的效率。 导入通讯录 如果你的企业已有全员通讯录,你可以在企业微信导入通讯录后,一键发送微信、邮件和短信邀请。 1 / 批量导入通讯录 设置入口:【管理后台】>【通讯录】>【批量导入/导出】查看 有以下三种导入方式可供选择: EXCE
快速拉起成员使用,一起高效协同办公。 后台批量导入通讯录 ● 设置入口: 钉钉管理后台-通讯录-批量导入/导出-下载通讯录模板,批量上传,钉钉会给未注册的用户发送激活短信。 访问钉钉管理后台-点击通讯录 点击批量导入/导出 下载通讯录模板,批量上传 手机钉钉添加 ● 设置入口:企业通讯录-员工/部门管理 手机钉钉-通讯录,点击管理 企业通讯录-员工/部门管理 可批量添加手机联系人,或单个添加和管理