OKHTTP请求与Postman请求不同

时间:2018-07-10 19:19:59

标签: java android okhttp

当尝试在Android环境中使用Okhttp库向服务器发出请求时,它与Postman中的(我认为)相同的调用没有相同的功能(代码已从Postman复制到android类)

代码:

MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
            String content = "userid=userID&passwd=passWord&__CSRFToken__=" + token + "&do=scplogin";
            Log.i("Content", content);
            RequestBody body = RequestBody.create(mediaType, content);
            Request loginRequest = new Request.Builder()
                    .url(loginURL)
                    .post(body)
                    .addHeader("content-type", "application/x-www-form-urlencoded")
                    .addHeader("cache-control", "no-cache")
                    .build();

Response loginResponce = client.newCall(loginRequest).execute();

这是邮递员的尸体截图:

enter image description here

编辑:问题是,当在android环境中使用该调用时,服务器会回复CSRF令牌无效,而它应该与我在Postman调用和in调用中使用相同的获取该令牌的方法相同android

1 个答案:

答案 0 :(得分:0)

就像@GregHNZ一样,这是会话的问题。服务器以一个cookie进行了响应,我之前从未想过。 Bij将给定的Cookie添加到响应正确的正确标题中。