首页 > 解决方案 > 使用不记名令牌的改造请求

问题描述

我正在尝试完成附有 Bearer 令牌的发布请求。当打电话给邮递员时,我得到了成功。

我的界面:

 public interface UserClient {


     // @FormUrlEncoded

     //  @Headers({ "Content-Type: application/json"})

    @POST("todos")


    Call<User>createAccount(

        @Field("id") String id,
        @Field("name") String name

);

在这个动作中,呼叫被启动。

    OkHttpClient okHttpClient = new OkHttpClient().newBuilder().addInterceptor(new Interceptor() {
        @Override
        public okhttp3.Response intercept(Interceptor.Chain chain) throws IOException {



            Request originalRequest = chain.request();

            Request.Builder builder = originalRequest.newBuilder().header("Authorization", "Bearer xxxxxxxxxx"
                    );

            Request newRequest = builder.build();
            return chain.proceed(newRequest);
        }
    }).build();


    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl("http://192.168.xx.x:xxxx/")
            .client(okHttpClient)
            .build();


    UserClient client = retrofit.create(UserClient.class);

  //  var k1 = "100000";
    Call<User> call = client.createAccount("777377","ddddddd");

    call.enqueue(new Callback<User>() {
        @Override
        public void onResponse(Call<User> call, Response<User> response) {
            Toast.makeText(MainActivity.this,"Success",Toast.LENGTH_SHORT).show();
            Log.d("RESPONSE",response.toString());
        }

        @Override
        public void onFailure(Call<User> call, Throwable t) {
            Toast.makeText(MainActivity.this,"Not Success",Toast.LENGTH_SHORT).show();
        }
    });
}

已授予清单权限。但是点击应用程序就关闭了!?

标签: javaandroid

解决方案


我以这种方式发送不记名令牌:-

接口类:-

@Headers("Content-Type: application/json")
    @POST("logout")
    Call<LogoutPojo> logOutUser(@Header("Authorization") String token);

或在我的活动中:-

apiInterface.logOutUser(token)

推荐阅读