Jquery 你能通过url发送JSON吗?
我有一个ruby哈希,其中键是URL,值是整数。我将散列转换为JSON,我想知道是否能够通过AJAX请求在url中发送JSON,然后从params散列中提取JSON 此外,我还将向客户端发送一个JSONifyed ruby哈希。如果我在AJAX函数中有一个成功的回调,在那里我接收到Jquery 你能通过url发送JSON吗?,jquery,ruby-on-rails,ruby,ajax,json,Jquery,Ruby On Rails,Ruby,Ajax,Json,我有一个ruby哈希,其中键是URL,值是整数。我将散列转换为JSON,我想知道是否能够通过AJAX请求在url中发送JSON,然后从params散列中提取JSON 此外,我还将向客户端发送一个JSONifyed ruby哈希。如果我在AJAX函数中有一个成功的回调,在那里我接收到data变量中的数据,那么如何使用JQuery解析该JSON 如果我需要更具体一些,请告诉我 是的,您可以将json对象作为get或post参数传递 为了使用Jquery解析json字符串,您可以使用$.parseJS
data
变量中的数据,那么如何使用JQuery解析该JSON
如果我需要更具体一些,请告诉我 是的,您可以将json对象作为get或post参数传递
为了使用Jquery解析json字符串,您可以使用$.parseJSON。是的,您可以毫无问题地解析json字符串。无需手动编码/解码 您的代码如下所示:
var jsonParam = '{"name":"Edgar"}'; //Sample json param
$.ajax({
...
type: "get", //This sends in url
data: {jsonParam: jsonParam}, //This will encode your json for url automatically
dataType: "json", //With this the response will be automatically json-decoded!
success: function(response){ //Assuming your server output was '{"lastName":"Villegas"}' as string
alert(response.lastName);
}
});
如您所见,不需要手动编码/解码。Jquery可以处理一切
希望这有帮助。干杯
PS:如果出于某种原因,您需要为url手动编码/解码json,请使用javascript的
encodeURIComponent(string)
和$.parseJSON(jsonString)
方法。如果您正在处理AJAX请求,为什么不发布它,而不是将json作为url的一部分发送…@Endophage如果我这样做了,那么我如何从服务器访问JSON呢?我的意思是通过url本身。但是如果我在数据
选项中发布并发送它,我将如何从控制器访问它?这取决于您的服务器端代码。例如,在C#中,您可以使用Request[elementName],或者在控制器操作中,您可以指定执行操作时自动填充的确切参数名。@Shankarsangli它可以工作,但是在get/query参数中传递JSON对象是一种好的做法吗?@Nitin-为什么不?除非您没有发送敏感信息。等等,那么通过指定数据类型:“json”
我不需要在服务器上解析json?(例如JSON.parse(这里是JSON_))。另外,如果我决定将其作为POST请求发送,我将如何在ruby中访问服务器上的JSON?