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