这是我的proxy.php
文件:
$url = urldecode($_GET['url']);
$url = 'http://' . str_replace('http://', '', $url); // Avoid accessing the file system
echo file_get_contents($url); // You should probably use cURL. The concept is the same though
和我的reader.js
:
$(document).ready(function () {
var url = 'http://localhost/taboo.blue-world.pl/admin/proxy.php?url=' + encodeURIComponent('http://www.blue-world.pl')
$.ajax({
url : url,
type : 'GET',
dataType : 'json'
}).done(function(data) {
console.log(data.results.result[1].category); // Do whatever you want here
});
});
但它没有打印任何东西。你能帮我解决一下吗?我对此不太满意。
答案 0 :(得分:1)
目前您正在尝试获取JSON响应。将dataType
更改为html
。
dataType: 'html'
答案 1 :(得分:1)
看起来您正在尝试将HTML响应作为JSON。
如果内容是HTML,您应该将ajax调用转到:
$.ajax({
url : url,
type : 'GET',
dataType : 'html'
}).done(function(data) {
console.log(data); // data contains the html as a text
});
答案 2 :(得分:1)
在reader.js中使用dataType: 'html'
(获取HTML数据)
OR
proxy.php中的 echo(json_encode(file_get_contents($url)));
(对于JSON数据)
答案 3 :(得分:0)
尝试jQuery.parseJSON
获取json格式
$.ajax({
url : url,
type : 'GET',
dataType : 'json'
}).done(function(data) {
var data = jQuery.parseJSON(data);
console.log(data.results.result[1].category); // Do whatever you want here
});
});