POST:在网址本身发送帖子请求

时间:2013-04-26 06:12:23

标签: json http url post

我收到了一个网址www.abc.com/details,并要求使用POST在此网址上发送我的姓名和电话号码。他们告诉我使用以下键将content-type设置为application / json,将body设置为有效的JSON:

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

现在我不知道如何发送此请求!它会是这样的:

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

或者我必须使用java发送相同的内容吗?

请帮忙

7 个答案:

答案 0 :(得分:29)

根据您提供的内容,您需要做的事情非常简单,甚至还有很多方法可以实现。您需要一些能让您根据自己的要求发布正文的内容。几乎所有编程语言都可以执行此操作以及cURL等命令行工具。

您决定使用工具,您需要创建JSON主体并将其提交给服务器。

使用cURL的示例是(全部在一行中,减去第一行末尾的\):

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"}

答案 1 :(得分:8)

您可以使用JavaScript和&amp ;;将数据发布到网址Jquery类似的东西:

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

答案 2 :(得分:2)

无法以明星方式在网址中发送POST参数。 POST请求本身就意味着在正文中发送信息。

我发现了一种相当简单的方法。使用Google的Postman,它允许您将内容类型(标题字段)指定为application / json,然后提供名称 - 值对作为参数。

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

找到明确的路线

只需使用您的网址代替他们的网址。

希望有所帮助

答案 3 :(得分:2)

在Windows中这个命令对我不起作用..我已经尝试了以下命令并且它可以工作 ..使用此命令我在特定用户的couchdb同步门方式中创建了会话...

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

答案 4 :(得分:1)

您可以使用邮递员。

在其中选择过帐作为方法。 然后在“请求正文”中发送JSON对象。

答案 5 :(得分:-1)

在Java中,您可以使用GET来显示关于网址的请求数据。但POST方法不能,因为POST有正文但GET没有正文。

答案 6 :(得分:-1)

如果您是通过浏览器通过url发送请求(例如使用网络服务),而默认情况下不使用html页面,则该请求将为GET,因为GET不需要任何正文。如果要将URL设为POST,则需要html / jsp页面,并且必须在表单标记中提及“ method = post”,因为出于安全原因,post将具有正文,并且将在该正文中传输数据。因此,您需要一种媒介(例如html页面)来发出POST请求。除非通过某种媒介将其指定为POST,否则无法将URL手动设置为POST。例如,在URL中(http://example.com/details?name=john&phonenumber=445566)you附加了数据(名称,电话号码),因此服务器会将其标识为GET数据,因为服务器正在通过URL接收数据,但不在请求正文中