php - jQuery 解析 Twitter jSON 但不解析我的同一个 PHP 文档

标签 php javascript jquery json jquery-mobile

我有一个函数可以解析 Twitter 搜索结果并将其放入我的 HTML 文档中。代码有效!

这是代码。

<script>
 $(function update_twit(){
$("#notice_div").html('Updating..'); 
$.ajax({
url: "http://search.twitter.com/search.json?q=stackoverflow&rpp=2",

    dataType: 'jsonp',
    success: function(json_results){
        $("#notice_div").html(''); 
        $("#twitList").html('');
        console.log(json_results);
        $('#twitList').append('<ul data-role="listview" data-inset="true" data-theme="c"></ul>');
        listItems = $('#twitList').find('ul');
        $.each(json_results.results, function(key) {
            html = '<p class="ui-li-bside">'+json_results.results[key].text+'</p>';
            html += '<p class="ui-li-aside">Gönderen: <strong>'+json_results.results[key].from_user+'<strong></p>';
            listItems.append('<li><a href="index.html">'+html+'</a></li>');
        });
        // Need to refresh list after AJAX call
        $('#twitList ul').listview();
        window.setTimeout(update_twit, 10000);

    },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
        $("#notice_div").html(errorThrown+'Error..'+textStatus);
        window.setTimeout(update_twit, 60000);
    }
});
 })
</script>

问题是我复制了 Twitter 网址并粘贴到我的浏览器中。得到回应后。我制作了一个像这样的 PHP 文档(getmyjson.php)

    <?
    header('Cache-Control: no-cache, must-revalidate');
    header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
    header('Content-type: application/json');
    $json='{"completed_in":0.021,"max_id":158455057786998785,"max_id_str":"158455057786998785","next_page":"?page=2&max_id=158455057786998785&q=erhan&rpp=2","page":1,"query":"erhan","refresh_url":"?since_id=158455057786998785&q=erhan","results":[{"created_at":"Sun, 15 Jan 2012 07:46:44 +0000","from_user":"_VCG_","from_user_id":169112180,"from_user_id_str":"169112180","from_user_name":"vedat can g\u00FCm\u00FC\u015F","geo":null,"id":158455057786998785,"id_str":"158455057786998785","iso_language_code":"tr","metadata":{"result_type":"recent"},"profile_image_url":"http://a3.twimg.com/profile_images/1710193374/bb_normal.png","profile_image_url_https":"https://si0.twimg.com/profile_images/1710193374/bb_normal.png","source":"&lt;a href=&quot;http://twitter.com/&quot;&gt;web&lt;/a&gt;","text":"@erhan_ordu ben gidemiyom ya ama ke\u015Fke bi ihtimal olsa da gitsem :D bi de VGC DE\u011E\u0130L VCG VCG :d","to_user":"erhan_ordu","to_user_id":458677081,"to_user_id_str":"458677081","to_user_name":"ERHAN ORDU"},{"created_at":"Sun, 15 Jan 2012 07:39:34 +0000","from_user":"hannyfaarah","from_user_id":199700684,"from_user_id_str":"199700684","from_user_name":"H\u2639","geo":null,"id":158453256241168384,"id_str":"158453256241168384","iso_language_code":"in","metadata":{"result_type":"recent"},"profile_image_url":"http://a2.twimg.com/profile_images/1736543252/cats_normal.jpg","profile_image_url_https":"https://si0.twimg.com/profile_images/1736543252/cats_normal.jpg","source":"&lt;a href=&quot;http://twitter.com/&quot;&gt;web&lt;/a&gt;","text":"\"mantan bebep erhan tersayang selalu dihati\" HAHAHAHA emir emir ngakak weeey","to_user":null,"to_user_id":null,"to_user_id_str":null,"to_user_name":null}],"results_per_page":2,"since_id":0,"since_id_str":"0"}';
    echo $json;
    ?>

现在我尝试将第一个代码中的 Twitter URL 更改为 www.mywebiste.com/getmyjson.php

但是这不起作用!

错误消息是:jQuery164018531796569004655_1326623562322 未调用Error.parsererror

最佳答案

对于本地服务器测试,请切换到通常的 json 而不是 jsonp。所以就变成了:

$.ajax({
    //url: "http://search.twitter.com/search.json?q=stackoverflow&rpp=2",
    //dataType: 'jsonp',
    url: 'getmyjson.php',
    dataType: 'json',
    ...
});

或者,如果您仍然想使用 jsonp,请更改您的 php 脚本,如下所示:

$json = '{...}';
echo $_GET['callback'] . '(' .$json . ')';

关于php - jQuery 解析 Twitter jSON 但不解析我的同一个 PHP 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8869172/

相关文章:

php - 根据PHP中第一列的值检测其他列的变化

javascript - mobx 商店更改后更新选项卡导航器上的徽章

jquery - 爆米花.js : Create a sequence of Vimeo videos

PHP 导入 csv 到 mysql 问题

php - Laravel 4 资源 Controller NotFoundHttpException

javascript - 从父级清除输入的 VUE 组件数据

javascript - 当元素相等时,Array.sort() 会产生意想不到的结果吗?

javascript - 使用 window.getSelection 从文本区域获取选定或光标定位的文本行

php - json 中按日期列每周 header

php - 好奇,您如何管理管理区域中的古腾堡 block 预览?