繁体   English   中英

在API调用中编码标点符号

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM