【发布时间】:2018-10-02 00:39:14
【问题描述】:
我在通过邮递员或 Java 库“io.restassured”发送 API 请求时遇到问题。 当我在 UI 上执行相同的操作时,请求会返回正确的响应,但是当我通过邮递员或 java 代码尝试相同的操作时,我得到:
401 Bad request
您的浏览器发送了无效请求 要求。
java代码
public static void main(String[] args) {
String requestUrl = "exampleBaseUrl/app/reports/api/rest/v1/graphs?context=shipper&reports_type=freights";
Response response = RestAssured.given().relaxedHTTPSValidation().header("x-csrf-token", "18ea65e740eb0ddddadf0ef435d92564").
when().
get(requestUrl);
}
我认为身份验证有问题,因为在开发工具中我可以看到 CSRF_token 的 Get 请求,它看起来像这样:
令牌的端点:
/login?get_csrf_token
对于这个请求,我得到以下响应:
{"csrf_token":"18ea65e740eb0ddddadf0ef435d92564"}
我不知道如何解决这个问题,我还尝试通过向令牌的端点/login?get_csrf_token 发送获取请求来通过 java 代码获取令牌
这个得到我的 HTML 响应,用户名和密码输入为空。
【问题讨论】:
标签: java rest api authentication csrf