如何将javascript数组发送到休息服务

时间:2014-08-12 19:51:27

标签: javascript json rest

我有一个包含几个ID的javascript数组。我想将它发送到我写过的休息网络服务。这是我的代码 -

$.ajax({
        type : 'GET',
        url : 'http://localhost:portNo/GlassdoorWebProject/index/getJobsData/list/',
        crossDomain : true,
        data : JSON.stringify(allIds),
        contentType: "application/json",
        success : function(data){
            alert("success in call2");

        },
        error : function(XMLHttpRequest,textStatus, errorThrown) {     
          alert("error"); 


        }
    });

当我执行此代码时,我收到一个警告框,显示错误。这就是我的Web服务中的方法的样子 -

@RequestMapping(value = "/getJobsData/list/{ids}", method = RequestMethod.GET)
public List<JobDetails> getJobs(@PathVariable("ids") String jobIds) {
    System.out.println("ids"+jobIds);
    return jobService.getJobDataForIds(jobIds);
}

当我在浏览器中使用浏览器中的url运行它时,它可以工作。但是,当我通过代码运行它时它不起作用。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

使用此代码段

@RequestMapping(value = "/getJobsData/list/", method = RequestMethod.GET)
public List<JobDetails> getJobs(@RequestParam("ids") String jobIds) {
    System.out.println("ids"+jobIds);
    return jobService.getJobDataForIds(jobIds);
}

主要问题是您将id作为请求参数发送,但您正在查看网址中的值。所以我改变了你的网络服务的代码,我认为它将解决你的问题。

相关问题