zoukankan      html  css  js  c++  java
  • 为什么不大愿意调用国内厂商提供的API

    郑昀  20100819

    我平时喜欢玩Mashup,所以对国外各种开放接口都有兴趣看两眼。像Twitter的,Yahoo!的(Yahoo! Pipe、YQL),Google(Buzz、Google Reader、Chart、WebFinger等)的,即使是很不着调的Social Graph API ,都能很快测试通过然后嵌到自己的所谓“智能语义聚合框架”里。但对于国内哪怕是所谓“开放平台”提供的API都会比较犯憷。

    (Updated:我没想一杆子打翻一船人。新浪开放平台算是中国大陆做得最好的了。文档也很详细。只是我撞了两三次罢了。豆瓣文档很好,调用也很顺利,只是权限保护得非常严格,遂放弃。)

    “不问不知道”的新浪微博

    权限问题:

    四月份时研究新浪微博开放平台 的搜索微博接口,曾经在Twitter上的@TimYang 的提示下调用成功过,但不久后一直调用失败,估计是加什么权限了。问来问去,微博上有新浪的人告知,此接口与其他接口不同,还需要单独申请权限。但它的官方Wiki中对此没有做任何提示,也没有人知道该找谁申请,新浪微博开放平台页面也没有这种提示,给 open_sina_mblog(at)vip.sina.com 发邮件申请也没人回复。

    后来居然是在@微博开放平台 的私信指点下(亲人啊,感谢啊),找到了一位工作人员的MSN。他请示上级领导之后告诉我,新浪微博Search API接口只向手机设备开放,对于第三方(互联网)应用不开放。新浪您倒是早点在自家页面上写清楚呀,浪费我时间。(今天又看了下,文档上终于做了提示:『search 搜索微博文章 (仅对新浪合作开发者开放)』。经过测试证明开禁了,第三方也可以调用了。)

    example和文档问题:

    新浪微博开放平台的SDK下载中提供的Python包(实际就是把Twitter的第三方库tweepy原封不动拿过来)呢,里面提供了 examples ,照理说就是测试用例。okay,按一般 API 的范儿(比如像Amazon API),只需要把APIKey和SecretKey换成我自己申请的即可测试了。但是捏,你要是真这么做,无论哪一个接口调用都是返回error response: status code = 400。为啥捏?因为OAuth不是像他们的 examples 那么玩的,需要写更多代码才能测试通过。堂堂新浪的文档和开发教程,反而不如人家一个小博客写得清楚(还配图呢,你见过新浪配过图吗?):http://jmillerinc.com/2010/05/31/twitter-from-the-command-line-in-python-using-oauth/

    为什么我调用Twitter API以及人家提供的各种封装库时,哪怕是第三方提供的开源库,也很少担心这些问题呢?


    ExExEx的华为

    顺便提一下这个臭名昭著的ExExEx问题。

    2001~2002年时做短信二次开发的人都可能看到过华为短信API接口文档,比如有一个函数叫做SubmitA,那么后来不知道哪位大爷要加一 个扩展接口,于是起名叫“SubmitAExEx”,Ex我懂是扩展的意思,但也不用ExEx吧,这不算什么,后来又加了一个扩展,于是,你猜对了,叫:

    SubmitAExExEx,

    没错,三个Ex。以后的几年里,每次大家(而且还是不同公司的)看到这种接口命名都会笑喷了。

    http://images.cnblogs.com/cnblogs_com/zhengyun_ustc/255879/o_1.png
  • 相关阅读:
    Codeforces 877 C. Slava and tanks
    Codeforces 877 D. Olya and Energy Drinks
    2017 10.25 NOIP模拟赛
    2017 国庆湖南 Day1
    UVA 12113 Overlapping Squares
    学大伟业 国庆Day2
    51nod 1629 B君的圆锥
    51nod 1381 硬币游戏
    [JSOI2010]满汉全席
    学大伟业 2017 国庆 Day1
  • 原文地址:https://www.cnblogs.com/zhengyun_ustc/p/1803473.html
Copyright © 2011-2022 走看看