【问题标题】:Pass json with special characters angularjs to ruby将带有特殊字符 angularjs 的 json 传递给 ruby
【发布时间】:2018-05-28 10:11:26
【问题描述】:

我需要制作一个搜索表单,其中使用的后端是 ruby​​,前端是有角度的。搜索查询以 json 格式的 angular 生成,并通过 restangular 服务传递给 ruby​​。

它工作正常。但是当我们用分号测试搜索字符串时,它返回了 500 内部错误。第一行puts params[:search] 为实际的json 字符串{"content":"my search is 提供{"content":"my search is ; and :", "options":[]}

请帮助我如何处理它“;”也请让我知道我需要处理的所有字符。

【问题讨论】:

标签: ruby-on-rails angularjs json ruby restangular


【解决方案1】:

您需要先对参数进行编码。

所以编码的参数将是: {"content":"my search is %3B and :", "options":[]}

以下内容也有效: %7B%22content%22%3A%22my+search+is+%3B+and+%3A%22%2C+%22options%22%3A%5B%5D%7D

您可以使用以下代码对 URL 进行编码:https://www.w3schools.com/tags/ref_urlencode.asp

我确信 Angular 必须有一些库来对 URL 进行编码。

您也可以使用原生Javascript URL encoder。

similar question 已在 SO 上得到答复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-12
    • 2013-09-01
    • 1970-01-01
    相关资源
    最近更新 更多