有没有办法检测访问者插入的推特用户名是否不正确?
我发现的唯一方法是在从 Twitter 接收 JSON 时检查 JSON 对象是否包含消息Sorry, that page does not exist
{"errors":[{"message":"Sorry, that page does not exist","code":34}]}
如果重要的话,我正在使用 Abraham 的 PHP 和 TwitterOAuth。
在这种情况下,我确信 Twitter API 将返回 HTTP 404(未找到)。
例如。此请求将返回 404:https ://api.twitter.com/1/users/show.json?screen_name=ThisScreenNameDoesNotExist&include_entities=false
浏览一下 HTTP 状态代码列表可能很有用,因为很多 API 都符合这个标准。我总是发现这篇Wikipedia 文章很好地解释了它们。
所以,在你的 PHP 代码中,你会做这样的事情(假设你curl
直接使用)
curl_exec($curlHandle);
$httpCode = curl_getinfo($curlHandle, CURLINFO_HTTP_CODE);
if($httpCode == 404) {
echo 'User does not exist';
}
作为参考,Twitter API 文档中的错误代码和响应页面确实声明 Twitter 错误 34 等同于 HTTP 404。