在asp.net中的Url解码
url decoding in asp.net
我有一个窗体在asp.net与几个文本框。我试图张贴的值在他们的服务器使用jquery ajax,但有问题。我使用javascript encodeuriccomponent文本框的值,然后张贴,但我看到url是自动编码的:
wanted result:
mylefturl/first%20name/last%20name
this is what's actually happenning:
mylefturl/first name/last name
所以我得到一个asp.net错误…
my javascript code:
var firstName = $("#SignupFirstName").val();
var lastName = $("#SignupLastName").val();
var email = $("#SignupEmail").val();
var password = $("#SignupPassword").val();
var url = '/Ajax/GetSignup/' + encodeURIComponent(firstName) + '/' + encodeURIComponent(lastName) + '/' + encodeURIComponent(email) + '/' + encodeURIComponent(password);
$.ajax({
url: u,
...
如何解决这个问题?
我建议您在发送AJAX调用时使用data
参数:
var firstName = $("#SignupFirstName").val(),
lastName = $("#SignupLastName").val(),
email = $("#SignupEmail").val(),
password = $("#SignupPassword").val();
$.ajax({
url: '/Ajax/GetSignup/',
type: 'POST',
data: {
firstName: firstName,
lastName: lastName,
email: email,
password: password
},
success: function(result) {
// TODO: process the results from the AJAX call
}
});
现在jQuery将负责正确的url编码发送到服务器的值。这些值将作为POST有效负载的一部分而不是url发送。这是确保它们正确到达服务器的最安全的方法。我建议您避免使用用户输入的值作为url路径的一部分。看一下下面的问题,了解一下如果你走这条路,你可能会遇到什么困难。
相关文章:
- 如何在JS中编码URL并在PHP中解码
- 从url对对象进行角度编码和解码
- PHP(PDO)url编码如何在javascript中解码?decodeURI?或解码URI组件
- 阻止Backbone.history.navigation解码URL片段
- 如何在NodeJS中对POST请求进行url解码
- 在JavaScript(浏览器端)中解码URL Safe Base64
- 如何在我的 AngularJS 应用程序中解码 URL 的部分查询字符串
- 在 JavaScript 中解码 URL 时遇到问题
- 解码已用javascript编码的url
- 解码 URL 后如何使用数据
- 对复杂字符串进行url解码;URI格式错误”;错误
- Angular显示url编码错误,如何获得解码版本
- 用javascript解码url字符串
- Android,数据url解码时base-64错误
- 在asp.net中的Url解码
- 在NodeJS中实现url解码(php)的最佳方式
- Url解码-不工作
- Java和JS/AS3在URL解码/编码UTF-8方面的差异(bug!?)
- 有没有办法让firefox不自动url解码分配给document.location.hash的值?
- window.open(),浏览器地址栏,和jQuery url解码