为什么翻新POST请求在@field批注中发送空正文

发布时间:2020-07-07 16:43

为什么改造POST请求在@field批注中发送空正文?

sign.setOnClickListener(new View.OnClickListener() {
@Override
 public void onClick(View view) {
    String nm=textname.getText().toString().trim();
    String cm=textmail.getText().toString().trim();
    String pm=textpassword.getText().toString().trim();
      apiinterface intro=api.retrofit.create(apiinterface.class);
          Call<customers> call=intro.register(nm,cm,pm);
          call.enqueue(new Callback<customers>() {
              @Override
              public void onResponse(Call<customers> call, Response<customers> response) 
                 {
                   if(!response.isSuccess())
                   {
                       sign.setText("Code:"+response.code());
                       return;
                   }
               }
               @Override
               public void onFailure(Call<customers> call, Throwable t) {
                   Toast.makeText(signup.this,t.getMessage(),Toast.LENGTH_LONG).show();
               }
           });
       }
   });

这里是界面代码。从编辑文本中获取数据,但无法使用发布请求在请求正文中发送

@FormUrlEncoded
@POST("addemployee/?")  
Call<customers>register(@Field("cname") String cname,
                    @Field("cmail") String cmail,
                    @Field("password") String password);

这里是改造生成器类。它将空数据发送到SQLServer

public static final String BASE_URL ="http://xxx.xxx.xx.xx/Service1.svc/";
   Retrofit retrofit = new Retrofit.Builder()
           .baseUrl(BASE_URL)
           .addConverterFactory(GsonConverterFactory.create())
           .build();
回答1