我这里有个问题。当我使用ajax传递一个包含"的参数给我的控制器时,它被一个空格所取代。
例如,我将使用ajax传递value=TomJerry Garfield
。当我在控制器中使用System.out.println()时,它会显示Tom Jerry Garfield
。我试过使用其他特殊字符,但似乎没有问题。
请帮忙。提前谢谢。
当我们将值传递给控制器时,有一个模型绑定器位于请求之间。在进行ajax调用时,url和请求被编码。url解码形式中的“”字符(空格)编码为“”
另一方面,模型绑定器对请求进行解码,提取参数并将其提供给控制器,因此“转换为”。但这里的问题是,为什么一个通过“”作为分隔符??
在url解码后被解码为空格。如果要传递
,则需要对其进行编码。
在一些GET
和POST
请求中(最有可能是在URL中,或通过表单),空格在传递到服务器之前被编码为"(plus)符号。如果您执行一个普通的GET
请求,您可以看到这种行为-您将看到类似于google.com?q=test例如
如果您想通过ajax GET/POST请求传递加号符号,您需要"urlencode"它。的URL编码值为
+
。
另请注意:
可以使用javascript encodeURIComponent()函数,如中所述:
AJAX POST和加号()--如何编码?
问题内容: 我正在尝试使用jquery ajax进行api调用,我正在使用curl进行api,但是我的ajax抛出了HTTP 500 我有一个curl命令,看起来像这样: 我像这样尝试过ajax,但无法正常工作: 我想念什么? 问题答案: 默认情况下,$。ajax()将转换为查询字符串(如果还不是字符串),因为这里是一个对象,请将其更改为字符串,然后设置,这样它就不会转换为查询字符串。
问题内容: 为什么将AJAX称为异步?它如何完成与服务器的异步通信? 问题答案: 它是异步的,因为它不会锁定浏览器。如果您触发Ajax请求,则用户在等待响应时仍可以工作。当服务器返回响应时,将运行一个回调来处理它。 您可以根据需要进行同步,如果需要,可以在请求未完成时将浏览器锁定(因此,大多数情况下这是不合适的)
问题内容: 最长的时间,我一直想了解为什么当浏览器在呈现的HTML元素之间存在换行符时,为什么在它们之间添加空白区域,例如: 上面的html将输出“ HelloWorld”字符串 , 在“ Hello”和“ World”之间 没有 空格,但是在以下示例中: 上面的html将输出“ Hello World”字符串 , 在“ Hello”和“ World”之间 有 一个空格。 现在,我可以毫无疑问地接
我喜欢的,我觉得很酷的东西 有人能告诉我我没意见吗?也许很酷,但成本很高?我不知道.多谢.
问题内容: 所以我似乎无法弄清楚…我有一句话要说,我希望它成为。我已经尝试了以下所有方法,但似乎都没有效果; 我真的不明白为什么最后一个有效,因为这样可以正常工作: 我在这里想念什么吗? 编辑 我知道\是转义字符。我要在这里执行的操作是将所有内容都 转换为其他内容, 并且替换似乎没有按照我的预期进行。 我希望字符串a看起来像字符串b。但是替换并不能像我想的那样替换斜线。 问题答案: 无需为此使用r
问题内容: 我正在用Python解析文件中的文本。我必须替换所有换行符(\ n), 因为此文本将生成html-content。例如,这是文件中的一些行: 现在我做: 而且我仍然看到带有换行符的文本。 问题答案: 只是踢,你也可以 用替换字符串中的所有换行符。