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.

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.