【发布时间】:2025-12-26 22:20:08
【问题描述】:
我正在尝试使用 Twitter 和 TwitPic API 将图片发布到 TwitPic。但我收到以下错误。
hash_hmac() 期望参数 2 是字符串,对象在 twitpic.php 第 36 行给出
我认为错误就在这里
$content = $connection->get('account/verify_credentials');
这里再次使用$content时
$signature = urlencode(base64_encode(hash_hmac('sha1', $content, $key, true)));
我该如何解决这个问题?谢谢。
【问题讨论】:
-
在尝试 hash_hmac 之前先尝试一个 var_dump($content),它可能是一个非字符串变量,比如 null
-
$content 从 Twitter 获取用户信息,Twitter 将信息作为 JSON 结果发送
-
No var_dump($content) 不起作用,仍然得到 hash_hmac() 期望参数 2 是字符串,给定对象
-
它告诉你问题,给定的对象,那么 $content 是什么类型的对象,你可以通过调用它的函数来将它转换为字符串
-
Rukshan 阅读人们发布的内容并对其进行思考,不要盲目尝试。你需要一个字符串。
var_dump($content)表示$content是一个对象。有你的问题。解决方案?将您的$content对象转换为字符串或从$content获取您需要使用hash_hmac发送的字符串部分。
标签: php oauth twitter-oauth