主页 → 网络开发

随便写的

m = $('h5audio_media').src;
m = m.replace(/stream(\d+)\.qqmusic\.qq\.com\/(\d+)/, "music.TinyStrong.com/$1/$2");

// 每天总有那么几条垃圾评论,真上火~

[原创] PHP HTTP Lib for Socket

因为觉得 curl 不够底层,所以尝试用 socket 库写了一个,经过多次修正现在已经支持 chunk 解码,算是比较底层的了...
不算太复杂,所以没有封装,而且这样修改起来也比较方便.

下面是代码:

阅读全部 ...

新的一年,新的感觉.

新年要有新气象嘛,这不2012到了,咱也不能闲着.近来发现主站访问有些慢...
OMG大猫换主机了..从MV搬到MT,好吧,一不做二不休,索性把整站都换掉...
咦~Typecho挺不错~就用他了...
最近一直在移植插件,还不错,TE还算的挺轻量的.
所有插件都是JS,也都是动态加载...
牺牲浏览器性能来减轻服务器鸭梨~~
好吧,就这些~开始搬家!

腾讯官方 JSONP 接口调用微博 [II]

因为腾讯给的接口有刷新限制,新手每小时1000次,平均算下来4.几秒一次,很明显并不是每次都能成功获取的,所以我重写了加载函数,0.5秒加载一次,直到成功为止.另外,我还重写了显示函数,鼠标移过的时候会自动伸展显示下面的内容,左击右击切换的功能依然还在,但自动翻页被我去掉了,已经用处不大了....
下面是代码...

阅读全部 ...

腾讯官方 JSONP 接口调用微博

先简单写一下,后面告诉大家这玩意儿是如何工作的.

<script type="text/javascript">
function weiboData(d){
    for(i in d.data){
        if(d.data[i].nick.length > 45) d.data[i].nick.substr = d.data[i].nick.substring(0, 45) + '...';
        switch(d.data[i].type){
        case 1:
            var type = '广播';
            break;
        case 2:
            var type = '转播';
            break;
        case 3:
            continue;
            break;
        case 4:
            var type = '对话';
            break;
        }
        var text = '<li><span class="left">'+ type +': '+ d.data[i].content +
                    '</span><span class="right">'+getTime(d.data[i].timestamp)+' 来自: '+d.data[i].fromarea+'</span></li>';
        $('#notice ul').append(text);
    }

    ...
}
</script>
<script type="text/javascript" src="http://v.t.qq.com/output/json.php?type=1&name=tinystrong&sign=8efce5b1f39e7a2f9a833387f82d02c1586ac456"></script>

1. 首先要声明一个名称为 weiboData 的函数(为啥要命名为weiboData,接着往下看...)
2. 加载一段 JS (实际上是JSONP啦)
3. 没了....

瞧,多简单啊,我们只要在 weiboData 函数里做处理就行了,
那有人会奇怪,光声明这个函数,那它啥时候被调用呢?
嗯,所以呢下面就要加载一段 js 了,js有三个参数
type,name,sign
这三个参数分别是
类型(1=微博,2=时间轴)
微博帐号
微博Sign(你无须管他是什么,从这里就可以得到 http://open.t.qq.com/home)

嗯,我们来分析一下这个 json.php 下面是内容,简单写一下

weiboData({"data":[{"content":"我们这些ring0的柔情,你们搞ring3的永远不懂!","count":0,"from":1,"fromarea":"腾讯微博","id":61634130877182,"image":null,"isvip":0,"name":"tinystrong","nick":"宅男小强","pic":"http://mbloghead.store.qq.com/mbloghead/e9bc30c5b118380aacc8","status":0,"timestamp":1324224245,"type":1})

JSONP是什么? 说白了就是JS

浏览器加载完 json.php 后会把他当js来执行
很明显他需要调用一个名叫weiboData的函数,并把后面的数据当参数传进去(这就是为啥上面要大家把函数命名叫weiboData的原因)
接着在我们这个weiboData里就能获取到后面的数据啦(OBJECT类型的)

啥..不懂>>>> 你火星了
啥..还是不懂>>>> 不懂神马 json.php 的内容么? 靠,这个文档我木有...自己分析吧...