Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将csrf令牌从android发布到spring?_Java_Android_Spring_Spring Security - Fatal编程技术网

Java 如何将csrf令牌从android发布到spring?

Java 如何将csrf令牌从android发布到spring?,java,android,spring,spring-security,Java,Android,Spring,Spring Security,我有Java中Spring的Web API。现在,我需要在我的android应用程序中获取并发布一些数据。问题是CSRF令牌。首先,我在android应用程序中获得CSRF令牌。然后我在Web服务器上发布了来自android应用程序的csrf令牌。当我禁用csrf安全性时,我从android发布数据web服务器。但当我启用csrf安全性时,Post方法不起作用 现在,我如何从Android在web服务器上发布csrf令牌 提前谢谢 **…Post方法** public void sen

我有Java中Spring的Web API。现在,我需要在我的android应用程序中获取并发布一些数据。问题是CSRF令牌。首先,我在android应用程序中获得CSRF令牌。然后我在Web服务器上发布了来自android应用程序的csrf令牌。当我禁用csrf安全性时,我从android发布数据web服务器。但当我启用csrf安全性时,Post方法不起作用

现在,我如何从Android在web服务器上发布csrf令牌

提前谢谢

**…Post方法**

    public void sendPostCsrf(String mEmail, String mPassword, String mCsrf, String mCsrfHeader) {
    csrfApi.savePost(mEmail, mPassword, 1, mCsrf, mCsrfHeader)
            .enqueue(new Callback<PostModel>() {
                @Override
                public void onResponse(Call<PostModel> call, Response<PostModel> response) {
                    if (response.isSuccessful()) {
                        //  showResponse(response.body().toString());
                        Toast.makeText(LoginActivity.this, "Success ", Toast.LENGTH_SHORT).show();
                        Log.d(TAG, "Retrofit " + new Gson().toJson(response.body()));
                    }
                }
                @Override
                public void onFailure(Call<PostModel> call, Throwable t) {
                    Log.e(TAG, "Retrofit " + t.getMessage());
                }
            });

} 
 @POST("/testingjsonpost")
@FormUrlEncoded
Call<PostModel> savePostCsrf(@Field("email") String mEmail,
                         @Field("password") String mPassord,
                         @Field("userId") long userId,
                         @Field("_csrf")String csrf,
                         @Field("_csrf_header") String csrfHeader);
public void sendpostsrf(字符串mEmail、字符串mPassword、字符串mCsrf、字符串mCsrfHeader){
csrfApi.savePost(mEmail、mPassword、1、mCsrf、mCsrfHeader)
.enqueue(新的回调函数(){
@凌驾
公共void onResponse(调用、响应){
if(response.issusccessful()){
//showResponse(response.body().toString());
Toast.makeText(LoginActivity.this,“Success”,Toast.LENGTH_SHORT.show();
Log.d(标记,“改装”+newgson().toJson(response.body());
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
Log.e(标记“改装”+t.getMessage());
}
});
} 

    public void sendPostCsrf(String mEmail, String mPassword, String mCsrf, String mCsrfHeader) {
    csrfApi.savePost(mEmail, mPassword, 1, mCsrf, mCsrfHeader)
            .enqueue(new Callback<PostModel>() {
                @Override
                public void onResponse(Call<PostModel> call, Response<PostModel> response) {
                    if (response.isSuccessful()) {
                        //  showResponse(response.body().toString());
                        Toast.makeText(LoginActivity.this, "Success ", Toast.LENGTH_SHORT).show();
                        Log.d(TAG, "Retrofit " + new Gson().toJson(response.body()));
                    }
                }
                @Override
                public void onFailure(Call<PostModel> call, Throwable t) {
                    Log.e(TAG, "Retrofit " + t.getMessage());
                }
            });

} 
 @POST("/testingjsonpost")
@FormUrlEncoded
Call<PostModel> savePostCsrf(@Field("email") String mEmail,
                         @Field("password") String mPassord,
                         @Field("userId") long userId,
                         @Field("_csrf")String csrf,
                         @Field("_csrf_header") String csrfHeader);
该接口发布最后一个URL代码。

    public void sendPostCsrf(String mEmail, String mPassword, String mCsrf, String mCsrfHeader) {
    csrfApi.savePost(mEmail, mPassword, 1, mCsrf, mCsrfHeader)
            .enqueue(new Callback<PostModel>() {
                @Override
                public void onResponse(Call<PostModel> call, Response<PostModel> response) {
                    if (response.isSuccessful()) {
                        //  showResponse(response.body().toString());
                        Toast.makeText(LoginActivity.this, "Success ", Toast.LENGTH_SHORT).show();
                        Log.d(TAG, "Retrofit " + new Gson().toJson(response.body()));
                    }
                }
                @Override
                public void onFailure(Call<PostModel> call, Throwable t) {
                    Log.e(TAG, "Retrofit " + t.getMessage());
                }
            });

} 
 @POST("/testingjsonpost")
@FormUrlEncoded
Call<PostModel> savePostCsrf(@Field("email") String mEmail,
                         @Field("password") String mPassord,
                         @Field("userId") long userId,
                         @Field("_csrf")String csrf,
                         @Field("_csrf_header") String csrfHeader);
@POST(“/testingjsonpost”)
@FormUrlEncoded
调用savepostsrf(@Field(“email”)字符串mEmail,
@字段(“密码”)字符串mPassord,
@字段(“userId”)长userId,
@字段(“\u csrf”)字符串csrf,
@字段(“\u csrf\u header”)字符串(csrfHeader);

您使用的是哪种身份验证?CSRF令牌基身份验证。。。
    public void sendPostCsrf(String mEmail, String mPassword, String mCsrf, String mCsrfHeader) {
    csrfApi.savePost(mEmail, mPassword, 1, mCsrf, mCsrfHeader)
            .enqueue(new Callback<PostModel>() {
                @Override
                public void onResponse(Call<PostModel> call, Response<PostModel> response) {
                    if (response.isSuccessful()) {
                        //  showResponse(response.body().toString());
                        Toast.makeText(LoginActivity.this, "Success ", Toast.LENGTH_SHORT).show();
                        Log.d(TAG, "Retrofit " + new Gson().toJson(response.body()));
                    }
                }
                @Override
                public void onFailure(Call<PostModel> call, Throwable t) {
                    Log.e(TAG, "Retrofit " + t.getMessage());
                }
            });

} 
 @POST("/testingjsonpost")
@FormUrlEncoded
Call<PostModel> savePostCsrf(@Field("email") String mEmail,
                         @Field("password") String mPassord,
                         @Field("userId") long userId,
                         @Field("_csrf")String csrf,
                         @Field("_csrf_header") String csrfHeader);