【问题标题】:Angular JS is not encoding JSON correctly to pass with get request?Angular JS 未正确编码 JSON 以通过获取请求传递?
【发布时间】:2015-09-27 03:09:21
【问题描述】:

我正在尝试使用 angular 的 $http 服务发送一个 JSON 字符串以及 url ass http get,但是由于可能是 angular 的 URI 编码功能无法正常工作,因此在发送请求时花括号被移除了,是有什么解决方法吗? samlpe 将是如果我发送

http://someurl.com?a={"a":"b"} 

它被发送到服务器

http://someurl.com?a="a":"b" 

我不知道 Angular 有什么问题。

【问题讨论】:

  • 显示您的实际代码。我怀疑你必须覆盖paramSerializer
  • (1) 试试JSON.stringify() (2) GET 请求不应该这样使用。您应该只需要发送最少的特定信息作为查询参数,而不是完整的 JS 对象。 (3) 使用POST请求向服务器发送数据。

标签: javascript json angularjs get url-encoding


【解决方案1】:

使用 JSON.stringify 将您的 url 对象转换为 JSON 文本。然后使用 encodeURIComponent(JSON_text) 对 url 进行编码。

【讨论】:

    【解决方案2】:

    这与URI编码有关。

    请查看以下问题以获得答案:

    How to escape a JSON string to have it in a URL?

    ;)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-22
      • 1970-01-01
      • 1970-01-01
      • 2018-01-28
      • 2022-01-26
      • 1970-01-01
      • 2013-03-08
      相关资源
      最近更新 更多