Ruby on rails Ruby请求失败,请求正文中带有“\”或双引号
我有一个ruby请求,路径如下:Ruby on rails Ruby请求失败,请求正文中带有“\”或双引号,ruby-on-rails,json,special-characters,Ruby On Rails,Json,Special Characters,我有一个ruby请求,路径如下: put 'book' => :create_record { "BookName": "ABC", "BookNumber: "ISBN-13" } 我将所需数据作为我的请求正文的一部分传递,如下所示: put 'book' => :create_record { "BookName": "ABC", "BookNumber: "ISBN-13" } 然而,在测试过程中,我注意到,当我只传递一个斜杠,即作为书名的“.”时,服务
put 'book' => :create_record
{
"BookName": "ABC",
"BookNumber: "ISBN-13"
}
我将所需数据作为我的请求正文的一部分传递,如下所示:
put 'book' => :create_record
{
"BookName": "ABC",
"BookNumber: "ISBN-13"
}
然而,在测试过程中,我注意到,当我只传递一个斜杠,即作为书名的“.”时,服务会失败,并出现意外的令牌错误。但是,当我将其用作\C时,它可以工作。双引号的情况也类似。如果我只是传递一个双引号作为书名,它将失败,并出现意外的标记错误。即使我传递偶数个双引号,它也会失败
是否有任何正则表达式或其他东西可以帮助处理这些特殊字符?一些特殊字符需要在JSON请求正文中使用反斜杠\进行转义。 请注意,这是客户机的问题,而不是Rails应用程序的问题 反斜杠示例:
{
"BookName": "\\",
"BookNumber": "ISBN-13"
}
或双引号:
{
"BookName": "\"",
"BookNumber": "ISBN-13"
}
可以我试图在rails应用程序中处理它,以避免在我的客户端未处理它时出现故障或崩溃。实现这一点的唯一方法是自己解析HTTP请求体并实现非标准JSON解析器。这可能不是您想要的…您如何创建请求主体?您是自己构建JSON还是使用库?我是自己构建的。请改用JSON库。不必犯别人已经解决的错误