你没有大声说出来,但是因为你特别提到你现在有一个只读 api 我想你也想向(你的)服务器发送命令。我将从研究身份验证方法开始。为此,我会选择 OAuth。您必须编写一个基本的客户端类,它可以将客户端连接到服务器并对其进行身份验证。这可以非常简单和小。PHP 甚至有一个 pecl 扩展可用(参见http://nl.php.net/manual/en/book.oauth.php),它非常易于使用。如果您没有安装 pecl 扩展的可能性,curl 也可以解决问题,即使这样也不是必需的。Twitter 还对 OAuth 的工作原理进行了很好的解释,并提供了指向外部资源的链接。看看这个!https://dev.twitter.com/docs/auth/oauth
请注意,在服务器级别,您必须实现自己的角色系统,oauth 只允许您的客户端以安全的方式连接到服务器。IE。它将让您的“用户”登录到您的应用程序,但不会检查登录用户是否(例如给出的示例)是具有所有权限的管理员用户、只读用户或中间的用户。
如果您已经理顺了 OAuth,只需编写一个您想要实现的 API 调用列表。您应该命名它们,例如:
/map/marker/get
/map/marker/set
/map/bubble/get
...
您的客户端 API 应该能够进行如下调用:
$api = new MyGreatApi();
$params = array('id' => 3, 'color' => 'red', ...);
$response = $api->call('/map/marker/get', $params);
echo $response;
查看一些 oauth 库实现,例如 Twitter 推广的那个 (https://dev.twitter.com/docs/twitter-libraries#php),或者例如运行时使用的非常简单的一位 (http://developer. longtailvideo.com/botr/downloads/php-api-kit.zip)
在服务器级别,您捕获 api 调用并将请求路由到特定控制器(使用一些 MVC 术语)。例如,如果你获取调用'/map/marker/get',你可以explode('/', $call);
搜索正确的类/函数/方法/任何东西,让它为你做魔法,然后发回输出(可以是很简单echo $output
),你就可以开始运行了!请注意,如果您具有身份验证和角色检查权限,则可以将产生输出的函数视为普通、oldschool、php 函数。他们没有什么特别的!api 调用的身份验证和路由应该是您主要关心的问题。
我希望这能澄清你的一些问题并给你一个方向。如果我误解了你的问题,请纠正我!