2013-04-26 87 views
11

我被給了一個網址.. www.abc.com/details,並要求使用POST發送我的姓名和電話號碼在這個URL。他們告訴我設置的內容類型爲application/JSON和身體有效的JSON使用下列按鍵:POST:在網址本身發送一個帖子請求

name: name of the user 
phone number: phone number of the user 

現在,我不知道如何發送該請求!這將是這樣的:

http://www.abc.com/details?method=post&name=john&phonenumber=445566 

或做我必須使用java發送相同?

請幫

+1

從哪裏發送此請求?一個應用程序,一個網頁?用什麼語言? – CodeCaster 2013-04-26 06:20:46

+0

你試圖實現哪一種編程? – gks 2013-04-26 06:20:50

+0

這就是要點..他們剛纔告訴我,如果服務器成功,我會得到200個代碼的響應。他們還沒有告訴任何其他..我可以簡單地在瀏覽器上寫一個URL並提交相同的?還是我必須使用編程語言? – Chandeep 2013-04-26 06:26:27

回答

20

根據您提供的內容,您需要做的事情非常簡單,您甚至可以採取多種方式來實現。你需要一些能夠讓你發佈請求的機構。幾乎所有的編程語言都可以做到這一點,以及像cURL這樣的命令行工具。

一個你有你的工具決定,你需要創建你的JSON正文並提交給服務器。

使用捲曲將是(全部在一條線上的\在第一行的末尾,減去)的一個例子:

curl -v -H "Content-Type: application/json" -X POST \ 
    -d '{"name":"your name","phonenumber":"111-111"}' http://www.abc.com/details 

上述命令將創建應如下所示,一個請求:

POST /details HTTP/1.1 
Host: www.abc.com 
Content-Type: application/json 
Content-Length: 44 

{"name":"your name","phonenumber":"111-111"} 
2

在Java中,你可以使用的顯示要求對URL.But POST方法數據不能,因爲POST有身體,但GET DONOT有身體GET

+1

您可以_can_發佈到具有GET參數的URL('query'),並且GET [can](http://stackoverflow.com/questions/978061/http-get-with-request-body)擁有一個body 。無論如何,這不能回答這個問題。 – CodeCaster 2013-04-26 07:53:30

+0

@CodeCaster也許在RESTFUL web服務GET可以有身體,我不知道。但是,我正在跟隨書從HEER FIRST - JSP和Servlet,從O'reilly。根據該書,我的上述語句在答案是正確的。可能不是針對所發佈的問題的適當答案。您可以在該書中看到第110頁.GET沒有正文。其中POST具有消息正文,這是POST處理更多數據並獲取比GET更多參數的關鍵點。 – 2013-04-27 09:02:57

+0

但是,OP不會詢問是否使用POST或GET,問題是如何創建POST請求_。 – CodeCaster 2013-04-27 09:36:22

6

您可以發佈數據使用JavaScript & jQuery的像一個網址:

$.post("www.abc.com/details", { 
    json_string: JSON.stringify({name:"John", phone number:"+410000000"}) 
}); 

但是,如果你不能夠提供你想要什麼,我們不能幫你。

+1

在我的情況下,$ .post(「details」,{name:「John,電話:」555-555-5555「});工作起來就像一個魅力小提示:在瀏覽器控制檯中訪問www.abc.com – 2013-11-15 22:10:08

0

無法以starightforward方式在url中發送POST參數。 POST請求本身意味着在主體中發送信息。

我發現了一個相當簡單的方法來做到這一點。使用Google的Postman,它允許你指定content-type(一個頭字段)作爲application/json,然後提供名稱 - 值對作爲參數。

您可以在http://docs.brightcove.com/en/video-cloud/player-management/guides/postman.html

找到明確的方向只需使用您的網址在他們的地方。

希望它可以幫助

1

在此命令不適用於me..I工作窗口已經嘗試下面的命令和它的工作原理 ..using這個命令我爲特定用戶創建CouchDB中同步門方式會話...

curl -v -H "Content-Type: application/json" -X POST -d "{ \"name\": \"abc\",\"password\": \"abc123\" }" http://localhost:4984/todo/_session