我有一个数组,并将其发送到Web服务,

网址是这个

http://localhost:4025/vmp_webservice.asmx/LoadService2Daily?fromDate=2014-05-26+00%3A00%3A00&toDate=2014-05-26+23%3A59%3A01&campaigns%5B%5D=default&campaigns%5B%5D=Support


该网址无效,并返回500内部错误

但是当我删除%5B%5D时,URL变为:

http://localhost:4025/vmp_webservice.asmx/LoadService2Daily?fromDate=2014-05-25+00%3A00%3A00&toDate=2014-05-25+23%3A59%3A01&campaigns=default&campaigns=Support


而且效果很好。

这些奇怪的字符是什么?如何删除它们?

数组是selectedCampains,我这样发送:

$.getJSON(webServiceUrl,
      { fromDate: valFrom, toDate: valTo, campaigns: selectedCampaigns })


我以这种方式获得该数组:

var selectedCampaigns = $("#campaignDiv input:checkbox:checked").map(function () {
        return $(this).val();
    }).get();
    console.log(selectedCampaigns);

最佳答案

好的,这些是方括号,必须将其解析并从URL中删除:

var sc = JSON.stringify(selectedCampaigns);


在试图将selectedCampaigns作为数组传递的地方传递此sc。

07-24 16:41