如何使用Laravel Api注册android应用程序用户
我想使用LaravelAPI注册一个用户。Api在服务器上是实时的,也在邮递员上工作,但在我的应用程序中它不工作。我正在使用第二个图书馆来使用它。这里是错误 2019-05-06 17:23:44.134 473-473/com.engrsoft.www.onlineservices E/response String:response{protocol=http/1.1,code=200,message=OK,url=} Api.java RegisterActivity.java 注册方法。反应来了,但没有成功如何使用Laravel Api注册android应用程序用户,android,laravel,api,retrofit2,Android,Laravel,Api,Retrofit2,我想使用LaravelAPI注册一个用户。Api在服务器上是实时的,也在邮递员上工作,但在我的应用程序中它不工作。我正在使用第二个图书馆来使用它。这里是错误 2019-05-06 17:23:44.134 473-473/com.engrsoft.www.onlineservices E/response String:response{protocol=http/1.1,code=200,message=OK,url=} Api.java RegisterActivity.java 注册方法。
public void register(){
Call<ResponseBody> call = RetrofitClient
.getRetrofitClient()
.getApi()
.register(txt_username,txt_email,txt_password);
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, retrofit2.Response<ResponseBody> response) {
String s= response.toString();
Log.e("response String", s);
Toast.makeText(getApplicationContext(),s,Toast.LENGTH_LONG).show();
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
Toast.makeText(getApplicationContext(),t.getMessage(),Toast.LENGTH_LONG).show();
}
}
}
公共无效寄存器(){
Call=Call客户端
.getclient()
.getApi()
.注册(txt_用户名、txt_电子邮件、txt_密码);
call.enqueue(新回调(){
@凌驾
公共void onResponse(呼叫,改装2.响应){
字符串s=response.toString();
Log.e(“响应字符串”,s);
Toast.makeText(getApplicationContext(),s,Toast.LENGTH_LONG.show();
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
Toast.makeText(getApplicationContext(),t.getMessage(),Toast.LENGTH_LONG).show();
}
}
}
此消息
2019-05-06 17:23:44.134 473-473/com.engrsoft.www.onlineservices E/response String:response{protocol=http/1.1,code=200,message=OK
不表示您所说的错误响应。事实上,这是一条Ok/success消息,表示请求已成功
现在您没有记录响应主体。所以请更改
String s=response.toString();
到
String s=response.body().toString();
用于从后端接收正确的消息此消息
2019-05-06 17:23:44.134 473-473/com.engrsoft.www.onlineservices E/response String:response{protocol=http/1.1,code=200,message=OK
不表示您所说的错误响应。事实上,这是一条Ok/success消息,表示请求已成功
现在您没有记录响应主体。所以请更改
String s=response.toString();
到
String s=response.body().toString();
用于从后端接收正确的消息谢谢。代码已在工作。只需以正确的形式打印响应。谢谢。代码已在工作。只需以正确的形式打印响应。
public class RetrofitClient {
private static final String BASE_URL="http://zattest.com.zawataafnantechnologies.com/newapi/api/";
private static RetrofitClient retrofitClient;
private Retrofit retrofit;
private RetrofitClient(){
retrofit= new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
}
public static synchronized RetrofitClient getRetrofitClient(){
if (retrofitClient == null){
retrofitClient = new RetrofitClient();
}
return retrofitClient;
}
public Api getApi(){
return retrofit.create(Api.class);
}
public void register(){
Call<ResponseBody> call = RetrofitClient
.getRetrofitClient()
.getApi()
.register(txt_username,txt_email,txt_password);
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, retrofit2.Response<ResponseBody> response) {
String s= response.toString();
Log.e("response String", s);
Toast.makeText(getApplicationContext(),s,Toast.LENGTH_LONG).show();
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
Toast.makeText(getApplicationContext(),t.getMessage(),Toast.LENGTH_LONG).show();
}
}
}