我無法在groovy中使用Google rest API。帶有JSON的Google QPX API帖子在Groovy上返回「HTTP/1.1 403 Forbidden」
我用groovy:S和我使用HTTPBuilder來詢問服務的新手。我的代碼是:
public static void testJSONPost() {
def builder = new HTTPBuilder("https://www.googleapis.com/qpxExpress/v1/trips/search?key={$MY_WEB_KEY}")
def result = builder.request(POST, JSON) { req ->
uri.query = ["request": ["passengers": ["adultCount": 1],"slice": [["origin": "BOS","destination": "LAX","date": "2015-05-13"],["origin": "LAX","destination": "BOS","date": "2015-05-23"]]]]
response.success = {resp, json ->
println "JSON POST Success: ${resp.statusLine}"
return json.name
}
response.failure = {resp ->
println "JSON POST Failed: ${resp.statusLine}"
}
}
}
testJSONPost()
我試着用捲曲的例子,它的工作:
curl -d @reques.json --header "Content-Type: application/json" https://www.googleapis.com/qpxExpress/v1/trips/search?key=MY_WEB_KEY
的 「reques.json」 的內容是:
{
"request": {
"passengers": {
"adultCount": 1
},
"slice": [
{
"origin": "BOS",
"destination": "LAX",
"date": "2015-05-13"
},
{
"origin": "LAX",
"destination": "BOS",
"date": "2015-06-06"
}
]
}
}
,即時通訊使用是關鍵一個web密鑰。
那麼我會繼續搜索和嘗試。
你什麼錯誤? MY_KEY與MY_WEB_KEY相同嗎? reques.json的內容是什麼? –
@tim_yates感謝您的快速評論。我編輯了這個問題。 錯誤是:403禁止 我新使用httpBuilder我試圖找到錯誤消息,但我與那場戰鬥...:S – paulofer85
你的curl命令似乎沒有做一個POST afaict。你不需要一個-X POST嗎?另外,在groovy代碼中,您似乎將地圖添加到了url中,而不是將它發送到請求的主體中?現在不在計算機上進行驗證,但:-( –