我正在执行ZOMATO API的GET请求,POSTMAN工具返回一个成功的响应,但是当我尝试使用Eclipse时,它返回以下消息:403错误无效的API密钥
我在POSTMAN和Eclipse中使用的API密钥是双重检查的 .
日食代码如下所述:
public class exampleTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
RestAssured.baseURI = "https://developers.zomato.com";
Response res = given().
param("user-key", <api_key>).
when().
get("/api/v2.1/categories").
then().assertThat().statusCode(400).and().contentType(ContentType.JSON).extract().response();
在POSTMAN工具中,我在 Headers 中传递了密钥而不是URL和响应是否成功,如下所示:
{
"categories": [
{
"categories": {
"id": 1,
"name": "Delivery"
}
},
{
"categories": {
"id": 2,
"name": "Dine-out"
}
},
{
"categories": {
"id": 3,
"name": "Nightlife"
}
},
{
"categories": {
"id": 4,
"name": "Catching-up"
}
},
{
"categories": {
"id": 5,
"name": "Takeaway"
}
},
{
"categories": {
"id": 6,
"name": "Cafes"
}
},
{
"categories": {
"id": 7,
"name": "Daily Menus"
}
},
{
"categories": {
"id": 8,
"name": "Breakfast"
}
},
{
"categories": {
"id": 9,
"name": "Lunch"
}
},
{
"categories": {
"id": 10,
"name": "Dinner"
}
},
{
"categories": {
"id": 11,
"name": "Pubs & Bars"
}
},
{
"categories": {
"id": 13,
"name": "Pocket Friendly Delivery"
}
},
{
"categories": {
"id": 14,
"name": "Clubs & Lounges"
}
}
]
}
2 回答
您将api密钥作为RestAssured中的查询参数传递 . 它应该作为 Headers 参数传递 . 像这样:
我有这个错误只是尝试它会工作,
而不是使用用户密钥只需使用apikey .
developers.zomato.com/api/v2.1/categories? apikey =您的API密钥
祝好运 .