2017-07-03 83 views
0

我正在使用(免費)Face ++ API,它會根據上傳的圖片和/或圖片URL返回一些好的數據。我正在上課,已經向我們介紹了使用jQuery進行ajax調用,但到目前爲止,我們只使用方法:「GET」如何在JavaScript中的AJAX調用中使用「POST」方法?

任何人都可以幫助我理解如何對ajax使用「POST」方法調用jQuery?

W3schools.com已經證明這樣的電話:

$.post(URL,data,callback); 

不過,我更習慣於看到通話做了一個有點不同......也許是這樣的:

$.ajax({ 
 

 
    url: URL_request, 
 
    method: "POST" 
 

 
}).done(callback);

臉++卻要求我將它傳遞了一些信息... 「API_KEY」 「face_tokens」 「地標」 ...和其他一些特定於該API的內容。我的問題是:

Where /如何將該數據傳遞到網站?

...應該將已知信息作爲連接傳遞給URL_request嗎? ...是傳遞給ajax的對象中硬編碼的已知信息?

+0

[$ .ajax()](http://api.jquery.com/jquery.ajax/)然後看看在該頁面上的示例。或根據[jQuery的Ajax相關方法](https://learn.jquery.com/ajax/jquery-ajax-methods/) – empiric

+0

根據$ .ajax文檔方法正在使用像這樣 '$ .ajax({ 類型: 「POST」, 網址:網址, 數據:數據, 成功:成功, 的dataType:數據類型 });' 你可以找到更多的細節[這裏](HTTPS://api.jquery。 com/jquery.post /) –

回答

0

首先,您需要查看docs。有各種各樣的示例向您展示發佈數據的不同方式。

回到您的實際問題:您不希望將額外的數據添加到URL。這被稱爲「查詢字符串」。查詢字符串對於將數據添加到GET請求很有用,但對於POST請求,最好使用正文。您可以將數據附加到POST請求的正文,如下所示:

$.ajax({ 
    url: URL_request, 
    method: "POST", 
    data: { API_KEY: 'ABC123BBQ'} 
}).done(callback); 
+0

好東西! 我檢查工作面++的文檔,瞭解什麼樣的信息的請求將被期待: [鏈接](https://console.faceplusplus.com/documents/5679127) 我得到了一些成功我最初的試驗是使用圖像URL進行工作,但現在我面臨着一個不同的挑戰:該項目需要使用筆記本電腦的內置攝像頭;在另一個網站的一些代碼的幫助下,我可以使用相機拍攝照片,但是當我嘗試使用此AJAX調用發佈該圖像時,它會迴應「400錯誤請求」 Docs提供了線索,但是我需要更多的答案! –

+0

這聽起來像是一個不同的問題。文件上傳有他們自己有趣的挑戰。您可能想將其作爲單獨的問題發佈。 –

相關問題