weixin_33719619 2015-10-29 21:22 采纳率: 0%
浏览 29

PHP API JSON响应

I built a very simple JSON response to test an AJAX request from a mobile device.

I set a local domain test.local and print a json response.

header("Content-Type:application/json; charset=utf-8");
echo json_encode(array('name' => 'Julio', 'city' => 'Miami'));

If I access with a browser http://test.local I get:

{"name":"Julio","city":"Miami"}

But if I access with an AJAX request it prints out 'null'

$.ajax({
    type:     "GET",
    url:      "test.local",
    dataType: "json",
    success: function(data) {
        alert(data.name + " " + data.city);
    }
});

If I change the URL in the AJAX request to http://jsonplaceholder.typicode.com/posts/1 works perfect.

  • 写回答

1条回答 默认 最新

  • DragonWar% 2015-10-29 22:00
    关注

    The URL you have is relative, the script is trying to access /path/to/script/test.local Add a / to the beginning or put http://test.local to make it absolute.

    $.ajax({ type: "GET", url: "http://test.local", dataType: "json", success: function(data) { alert(data.name + " " + data.city); } });

    Works for me.

    评论

报告相同问题?