[英]Encode punctuation in API call
我正在使用JavaScript请求房地产API。 我发送街道地址,并向我发送有关该物业的信息。 它适用于大多数地址。 但是,对于地址中带有句点的地址(街道= 395),它不起作用,我想知道标点符号是否将其扔掉,如果是的话,如何对其进行正确编码。
// grab address from html
function getAddress() {
address = $('.js-pma-address').val();
address = $.trim(address);
...
data(address, locale);
}
// compile data for API query
function data(address, locale) {
dataObj.Key = ...;
dataObj.Address = address;
dataObj.LastLine = locale.toString();
...
compileRequest(dataObj);
}
// create url for API request
function compileRequest(dataObj) {
var request = 'http://rc.api.sitexdata.com/sitexapi/sitexapi.asmx/AddressSearch?';
request += $.param(dataObj);
runQueries(request);
}
// run api query
function runQueries(request) {
$.ajax({
url: 'lp/proxy.php',
data: {requrl: request + '&reportType=187'},
dataType: 'xml'
})
尝试使用encodeURIComponent()
...如果标点是罪魁祸首,那应该纠正它。
// compile data for API query
function data(address, locale) {
dataObj.Key = ...;
dataObj.Address = encodeURIComponent(address); // <-- Right here
dataObj.LastLine = locale.toString();
...
compileRequest(dataObj);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.