我想为我的网站创建一个api,以便我允许其他网站开发人员集成我的api用户登录和注册.....我该怎么办...
答案 0 :(得分:5)
这是一个非常广泛的问题,所以这里有一个广泛的答案:你创建一个带有参数的页面,并以一种易于解析的格式输出答案(JSON,XML等)
例如:http://example.com/api?action=list_users可以返回:
<user>
<userid>1</userid>
<username>foo</username>
</user>
答案 1 :(得分:0)
为开发人员创建一种查询服务器的方法,就像迈克尔所说。一种常见的技术称为SOAP,另一种(更简单)称为REST,但如果您愿意,您当然可以使用其他格式。
最重要的是,您记录 API,以便其他开发人员确切了解其工作原理。写下关于API的每个细节:它是如何工作的,它提供哪些方法以及哪些参数是强制性的和可选的。理想情况下,您还提供示例甚至是功能完备的客户端实现。
答案 2 :(得分:0)
也许我误解了这个问题,但登录系统的集成听起来像是OpenID。为什么在构建标准协议时制定自己的协议?
答案 3 :(得分:0)
我个人更喜欢使用MVC框架来创建API,因为我的结构恰到好处!
通过使用像CI(CodeIgniter)这样的系统,您可以创建一个用于身份验证的库。
对于MVC模型,您可以这样使用
http://example.com/api/users/latest/
http://example.com/api/users/id/33/
http://example.com/api/users/id/33/
您的库中只需构建身份验证过程,以便您可以快速检查不同实体的权限。
PHP和CI中的示例
用户&gt;最新
class Controller_users extend CI_Controller
{
public function latest($limit = 10)
{
if($this->library->authorized(API_AUTH_LATEST))
{
//show the data.
}
}
}
授权的功能将自动读取标题/ API键等,并触发错误输出。
对我而言,这是一种简单的方法,可以实现从SOAP中删除大量垃圾的API。