我正在向後端服務器(openid認證庫)發送帖子。它有效,當我有一個簡單的表單,其動作指向服務器的URL。
但是,當我使用$ http.post方法失敗。我比較了標題並將內容類型更改爲url-form編碼。這解決了部分問題,但來自服務器的重定向仍然失敗。
任何有關常規表單發佈和導致此行爲的$ http.post角色之間的區別的想法?
我正在向後端服務器(openid認證庫)發送帖子。它有效,當我有一個簡單的表單,其動作指向服務器的URL。
但是,當我使用$ http.post方法失敗。我比較了標題並將內容類型更改爲url-form編碼。這解決了部分問題,但來自服務器的重定向仍然失敗。
任何有關常規表單發佈和導致此行爲的$ http.post角色之間的區別的想法?
但是從服務器重定向仍然失敗。
服務器重定向不應該工作回到前端,因爲它的最後一頁達到Ajax請求會給你的HTTP狀態代碼。因此,如果您通過ajax請求的頁面正在重定向到另一個頁面,它會給您200個狀態。你可以閱讀這個http://www.w3.org/TR/XMLHttpRequest/#infrastructure-for-the-send-method的w3c草案。
如果你真的想看到不同,我會建議設立一個免費的工具,如Fiddler。然後,您可以在離開和/或到達時看到請求,並查看每個差異。
但是,從理論上講,只有在表單標記或$ http.post調用中設置的任何差異。他們都使用POST我假設。一個人可能會使用不同的內容類型(表單標籤上的enctype),而不是像「multipart/form-data」或「application/x-www-form-urlencoded」與「application/json」。 ..這是一個關鍵的部分,告訴服務器你發送什麼類型的數據。如果服務器期待一種類型並獲得另一種類型,那可能會導致您的失敗。
雖然沒有看到您的代碼很難說。
你可以發表你正在使用角度來發表帖子的代碼嗎?該表單可能也適合發佈。 – gbtimmon