尝试处理来自客户端的第一个API调用

时间:2011-08-05 23:06:11

标签: php

让客户端第一次调用我的API。我如何处理第一个API调用? 我该如何拦截api.php中的http://www.mycom.com/api/GET?name=simple调用?

client.php

    <?php 
$ch = curl_init();
$url = 'http://www.mycom.com/api/GET?name=simple';
curl_setopt($ch, CURLOPT_GET, true);
curl_setopt($ch, CURLOPT_URL, $url);
$json = curl_exec($ch);
echo "\n".$json."\n";

 ?> 

api.php里面有什么?

<?php

?>

2 个答案:

答案 0 :(得分:2)

尝试将以下内容添加到.htaccess文件

RewriteEngine On
RewriteRule ^api/([a-zA-Z]+) api.php?mode=$1 [QSA]

当客户端调用“api / GET?name = simple”时,这与“api.php?mode = GET&amp; name = simple”相同。

答案 1 :(得分:1)

我认为您的意思是客户处理: http://www.mycom.com/api.php?name=simple

那么,标准的方法就是与客户做交易,比如说第一个api调用必须说它是第一个: http://www.mycom.com/api.php?name=simple&first

然后你就可以知道api.php中的第一个电话了

if (isset($_GET['first'])){
    // first call
} else {
    // not first call
}

否则,如果你不信任用户(客户端),并认为他可能会做一些不好的事情,你可以知道这是他的IP第一次打电话。