Javascript 可以使用AJAX XMLHttpRequest执行真正的POST(而不是var=val url类型POST)吗?
对不起,我不太清楚该怎么问这个问题。。但基本上是这样 我刚开始使用Ajax。。在后台发送XMLhttpRequest时,我遇到了表单数据中的一些html特殊字符的问题,特别是过早终止变量的符号(&S) 将“你和我”的结果视为“你” 现在从我的角度来解释这个问题。。就是这个。。如果我使用GET方法提交我的常规表单,同样的事情也会发生。。因为变量是URL编码的。。但是,如果我将表单设置为POST方法,那么所有内容都会按我的需要保留 现在我相信它与此有关(?) 特别是在表格部分。。还有别的选择吗 我不想对通过Ajax传递的每个变量运行清理例程:(Javascript 可以使用AJAX XMLHttpRequest执行真正的POST(而不是var=val url类型POST)吗?,javascript,ajax,post,Javascript,Ajax,Post,对不起,我不太清楚该怎么问这个问题。。但基本上是这样 我刚开始使用Ajax。。在后台发送XMLhttpRequest时,我遇到了表单数据中的一些html特殊字符的问题,特别是过早终止变量的符号(&S) 将“你和我”的结果视为“你” 现在从我的角度来解释这个问题。。就是这个。。如果我使用GET方法提交我的常规表单,同样的事情也会发生。。因为变量是URL编码的。。但是,如果我将表单设置为POST方法,那么所有内容都会按我的需要保留 现在我相信它与此有关(?) 特别是在表格部分。。还有别的选择吗 我不
&
符号过早终止变量
&
应该终止x-www-form-urlencoded数据中的值。在构建URL时,您需要删除数据
如果我使用GET方法提交我的常规表单,同样的事情也会发生。因为变量是URL编码的
否。如果使用GET提交常规表单,则输入的数据将采用URL编码,显示为数据的符号和字符将由%26
表示,而不是原始&
字符表示,因此不会发生同样的情况
是否有[应用程序/x-www-form-urlencoded]的替代方案
您可以使用您喜欢的任何数据格式。有些格式比其他格式更容易生成(JSON特别容易从浏览器生成)。然后,您将面临在服务器上解码这些格式的挑战(表单处理库不倾向于使用JSON,因此您必须获取原始POST数据并自己解码)
因为您的实际问题是通过对数据进行编码来解决的,所以这是不必要的。hmm
hr.open("POST", link, true);
hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");