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