我在Google App Engine上的自定義域上有一個應用程序,我需要捕獲JSON包。發送JSON到Google App Engine上的HTTPS不起作用
我使用http://www.hurl.it/測試和URL是這樣的:但是https://subdomain.website.net.au/folder/
這給服務器錯誤,如果我取下S,只是使用HTTP請求正常工作。 Google需要什麼才能使其發揮作用?
更新:
使用curl和運行以下命令:
curl --verbose --data "@json.txt" --header "Content-Type:application/json" "https://subdomain.website.net.au/folder/"
我得到的錯誤:「無法獲取本地頒發者證書」當我從http://curl.haxx.se/ca/cacert.pem下載證書文件
並運行:
curl --verbose --cacert "cacert.pem" --data "@json.txt" --header "Content-Type:application/json" "https://subdomain.website.net.au/folder/"
它工作正常,作爲e xpected。這是否意味着問題與hurl.it?如果是這樣的話,我有一個客戶試圖向我發送數據,但它也不能正常工作。
UPDATE2:
問題最終是客戶端不支持SNI,所以我只好用VIP代替。這花錢,是一種較舊的方法,但更兼容。
對不起,我應該指定,我有SSL設置和工作正常。我可以主持一個SSL網站,我只是不能發送JSON消息。 – Craig
那麼,那麼錯誤是什麼?你檢查了你的應用程序引擎日誌嗎?您使用的應用程序是否信任使用的證書(hurl.it)?你的JSON格式不正確,或者只是很大?只要有一個servlet或一段代碼處理對給定資源的請求,App Engine就不應該關心發送給您的應用程序的內容。 – konqi
是的,在日誌中沒有錯誤,我可以在另一臺服務器上使用同一個域但是不同的子域託管相同的腳本,hurl.it使用相同的JSON工作得很好。 GAE似乎以不同的方式對待它。我也嘗試了一個非常小的JSON包,但仍然在hurl.it上出現錯誤。 GAE沒有記錄任何東西,我覺得很奇怪,但是使用HTTP它記錄了一個顯示所有內容都正常的條目,但是HTTPS就好像什麼都沒有觸及服務器。 Google是否有關於JSON來自哪裏的規定?如果有的話,有關於此的文檔? – Craig