Calling Rest webservice using JQuery Ajax call , web service is returning JSON string

后端 未结 3 1284
离开以前
离开以前 2021-01-15 03:09

I have made a Rest Web Service:

package org.jboss.samples.rs.webservices;


import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.GET         


        
3条回答
  •  佛祖请我去吃肉
    2021-01-15 03:19

    Your service and output is right.

    Problem is same orgin policy http://en.wikipedia.org/wiki/Same_origin_policy

    Ajax does not allow access to inner level service. For example, in the www.example.com/index.html, you can not access www.example.com/service/book?id=1. Because you changed your context path from www.example.com to www.example.com/service/book. This is not allowed for security but we have one solution

    Previously, I had same problem and I solved it with below code. I think it can help you. Key point is dataType: 'json'

    
        function testService()
                    {
                        $.ajax(
                        {
                            dataType: 'json',
                            headers: {
                                Accept:"application/json",
                                "Access-Control-Allow-Origin": "*"
                            },
                            type:'GET',
                            url:'http://localhost:8080/service/book/search/1',
                            success: function(data)
                            {
                                document.writeln("Book id : " + data.id);
                                document.writeln("Book title : " + data.name);
                                document.writeln("Description : " + data.description);
                            },
                            error: function(data)
                            {
                                alert("error");
                            }
                        });
                    }
    
    

提交回复
热议问题