我需要做一个搜索表单,其中使用的后端是红宝石和前端是角度。搜索查询是以json格式在angular中生成的,并通过restangular服务传递给ruby。
它工作得很好。但是当我们用分号测试搜索字符串时,它返回了500内部错误。第一行puts params[:search]
为实际的json字符串{"content":"my search is ; and :", "options":[]}
提供了{"content":"my search is
请帮助我如何处理它";“也请让我知道我需要处理的所有字符。
发布于 2018-05-28 18:41:47
您需要先对参数进行编码。
因此编码后的参数将是:{"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
您可以使用https://www.w3schools.com/tags/ref_urlencode.asp对URL进行编码。
我确信Angular会有一些库来对URL进行编码。
您也可以使用原生Javascript URL encoder。
similar question已经在SO上得到了应答。
https://stackoverflow.com/questions/50563990
复制相似问题