json查询字符串中的url格式

时间:2013-05-16 18:52:45

标签: jquery html ajax json query-string

jQuery.getJSON中说:

  

发送到服务器的数据作为查询附加到URL   字符串

这个字符串的格式是什么?我看到这种格式的url来自客户端的这样一个jquery json调用:

http://<domain:port/path/something.html?somevalue=a;othervalues=1,2,3,4;v=3

这种格式是否特定于json?我通常认为附加到URL的参数由&

分隔

3 个答案:

答案 0 :(得分:1)

  

这个字符串的格式是什么?

如果您使用data: {...}格式,则会以application/x-www-form-urlencoded格式发送,即:

key1=value1&key2=value2...

示例:

$.getJSON('http://<domain:port/path/something.html', { key1: 'value1', key2: 'value2' }, function(result) {

});
  

我看到这种格式的url来自客户端的这样一个jquery json调用:   http://<domain:port/path/something.html?somevalue=a;othervalues=1,2,3,4;v=3

这是查询不是使用数据参数发送的,但可能直接在url中硬编码(getJSON方法的第一个参数):

$.getJSON('http://<domain:port/path/something.html?somevalue=a;othervalues=1,2,3,4;v=3', function(result) {

});

或者他们将数据提供为字符串而不是键/值对:

$.getJSON('http://<domain:port/path/something.html', 'somevalue=a;othervalues=1,2,3,4;v=3', function(result) {

});

答案 1 :(得分:0)

支持“;”作为查询字符串中的分隔符是W3C建议: {{3P>

答案 2 :(得分:0)

  

这个字符串的格式是什么?

可以为属性指定对象或字符串的值。

如果给它一个对象,那么它的键和值将被格式化为application/x-www-form-urlencoded数据(就像表单提交一样)。

如果给它一个字符串,它将是该字符串的任何内容 - 所以它可以是“无论使用它的代码的作者想要它”。

  

我看到这种格式的网址......

这将是“无论作者想要什么”的情况。请注意,;&可以在多个application/x-www-form-urlencoded解码库中互换使用。这是recommended by the HTML 4 specification

  

这种格式是否特定于json?

没有。用于发出请求的URL的数据格式与响应的数据格式之间没有任何关联。