最近在做新浪微博这方面的东东,
由于新浪唯独没有提供DELPHI的接口,
而我对HTTP这一块不了解,
所以在OAUTH和调用API方面遇到很多问题,
OAUTH可以认证,但不稳定,隔三差五报'http 104 unanthorized'错误,不知问题再哪
还有就是调用API的时候怎么传参数给服务器,
比如Friends_timeline.json,我想每次返回十条,该怎么弄,
请指教

解决方案 »

  1.   

    问一下楼主 ,  delphi XE2  编译的空白程序在 IOS 报错是什么原因?
      

  2.   

    接口根据新浪的开发文档写的,它有说明 ,但是经常验证失败,很不稳定
    一开始弄很没有头绪,弄OAUTH就花了一个星期。。
    昨天花了一天才把发中文微博弄明白
    没文化真可怕。。
      

  3.   

    好啊,你有Demo么?发我邮箱,如果没问题,我再问你买。。
    [email protected]
      

  4.   

    DEMO现在在公司没有,回家了才可以发!
    如果真心想要就加QQ谈,或者你自己继续研究下,其实也不算太难的!
      

  5.   

    就是不太稳定,
    我用的是INDY的HTTP控件,
    需要什么特殊的设置么,我怀疑是这个问题。。
      

  6.   

    没有特殊设置,我也是INDY  10
    Delphi xe下写的
      

  7.   

    需要设置ContentType = "application/x-www-form-urlencoded";
    吗?
      

  8.   

    解决了,是我签名没有URLEncode.汗死我了。。呵呵。。
      

  9.   

    我的错误的请求串(我的OAuth类)
    Debug Output: http://api.t.sina.com.cn/oauth/request_token?oauth_consumer_key=1418225871&oauth_nonce=F625A3B4B63BD016BAD5D06D7472534C&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1320753939&oauth_version=1.0&oauth_signature=cC33ctKdRpPSeZzHN+ll+EKJc6k= Process SinaWeiBoKong.exe (708)正确的请求串(TWritter OAuth 类)
    'http://api.t.sina.com.cn/oauth/request_token?oauth_consumer_key=1418225871&oauth_nonce=F625A3B4B63BD016BAD5D06D7472534C&oauth_signature_method=HMAC-SHA1&oauth_signature=cC33ctKdRpPSeZzHN%2Bll%2BEKJc6k%3D&oauth_timestamp=1320753939&oauth_version=1.0'但是基串都是相同的:
    'GET&http%3A%2F%2Fapi.t.sina.com.cn%2Foauth%2Frequest_token&oauth_consumer_key%3D1418225871%26oauth_nonce%3DF625A3B4B63BD016BAD5D06D7472534C%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1320753939%26oauth_version%3D1.0''GET&http%3A%2F%2Fapi.t.sina.com.cn%2Foauth%2Frequest_token&oauth_consumer_key%3D1418225871%26oauth_nonce%3DF625A3B4B63BD016BAD5D06D7472534C%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1320753939%26oauth_version%3D1.0'加密算法钥也相同:
    'a14b358473326e222142cd958b3cd6be&'
    'a14b358473326e222142cd958b3cd6be&'生成的签名串也相同
    'cC33ctKdRpPSeZzHN+ll+EKJc6k='
    'cC33ctKdRpPSeZzHN+ll+EKJc6k='最终发现竟然最后的签名没有URLEncode,
    &oauth_signature=cC33ctKdRpPSeZzHN+ll+EKJc6k=(没有URLEncode)
    oauth_signature=cC33ctKdRpPSeZzHN%2Bll%2BEKJc6k%3D(有URLEncode)唉,麻BI大意害死人啊。。