自己創(chuàng)建應(yīng)用與ucenter 1.6的通信分析

2013-04-02 17:11:28來(lái)源:afen和IT那點(diǎn)事兒作者:

做一個(gè)項(xiàng)目,本來(lái)想自己寫一個(gè)用戶系統(tǒng),但互聯(lián)網(wǎng)存在了很多好用的東西,為何不拿過(guò)來(lái)用呢,于是就想到了ucenter,裝好ucenter,然后在網(wǎng)站上進(jìn)行連接,似乎沒(méi)有遇到什么困難,但是從ucenter這里一直提示通信失敗,

做一個(gè)項(xiàng)目,本來(lái)想自己寫一個(gè)用戶系統(tǒng),但互聯(lián)網(wǎng)存在了很多好用的東西,為何不拿過(guò)來(lái)用呢,于是就想到了ucenter,裝好ucenter,然后在網(wǎng)站上進(jìn)行連接,似乎沒(méi)有遇到什么困難,但是從ucenter這里一直提示通信失敗,這樣就沒(méi)辦法做到多個(gè)應(yīng)用與其同步,比如你裝了個(gè)discuz論壇,這樣就沒(méi)辦法和網(wǎng)站進(jìn)行同步登陸。

打開(kāi)Ucenter,然后應(yīng)用管理,右鍵通信失敗->查看元素(我這里使用firefox和firebug插件哦~),可以看到

\

原來(lái)這里是使用ajax去請(qǐng)求你的網(wǎng)站的api,打開(kāi)admin.php(ucenter的源代碼哦~),順著源代碼最后找到了model/app.php里面的一個(gè)方法test_api()。于是加了一句話,把URL打印出來(lái),看看到底請(qǐng)求的是什么路徑

 function test_api($url, $ip = '') {

        $this->base->load('misc');
        if(!$ip) {
            $ip = $_ENV['misc']->get_host_by_url($url);
        }
 
        if($ip < 0) {
            return FALSE;
        }
        print_r($url);exit;
        return $_ENV['misc']->dfopen($url, 0, '', '', 1, $ip);
    }

打印出url為http://aaaa.com/api/uc_client/api/uc.php?code=5e08QnhQKBsxFLhoTWN0OReOoy8DEzzkZKHadyYEdSZWV4olQ8e2LfNKr2DKCLgFGbgdC5BTZuU

(這里怎么看?一樣用firefox+firebug哦~)

于是用瀏覽器訪問(wèn)了一下,再去找uc.php看哪里有問(wèn)題,只要調(diào)試出結(jié)果是1就可以了。當(dāng)然,如果什么都不做,可以直接輸出一個(gè)1,也可以顯示通信成功。

注:ucenter版本1.6.0
 

關(guān)鍵詞:ucenter

贊助商鏈接: