在 Twitter 应用程序上注册 Webhook url 时出现问题

Problem with registering webhook url on twitter app

我正在尝试在 Twitter 应用程序上注册一个 Webhook url,并且我正在使用这个包 twitteroauth

这是我的代码。

$cbUrl = 'https://123456.ngrok.io';
$envName = 'myDevEnvironment';
$connection = new TwitterOAuth(OAUTH_CONSUMER_KEY, OAUTH_CONSUMER_SECRET, OAUTH_TOKEN, OAUTH_TOKEN_SECRET);
$data = $connection->post('account_activity/all/' . $envName . '/webhooks', ['url' => urlencode($cbUrl)]);

我正在使用 ngrok 获取我的本地主机 Webhook url 的 https。但仍然收到错误代码 214 的响应和错误消息。

{"errors":[{"code":214,"message":"Webhook URL does not meet the requirements. Please use HTTPS."}]}

如有任何帮助,我们将不胜感激。

谢谢。

Please use HTTPS.

该错误是不言自明的,您的请求被拒绝是因为您未处于安全连接中。在您的服务器上安装 SSL 证书。

这是有关传输层安全性的 ngrok 文档

https://ngrok.com/docs#tls

['url' => urlencode($cbUrl)]

他们检查所提供的 URL 是否以 https:// 开头可能会失败,因为您对值进行了 URL 编码。您的包可能会负责对 API 调用中的任何参数值进行编码,因此在这种情况下,您现在应该对它进行两次编码。

如果他们在 https%3A%2F%2F123456.ngrok.io 的开头查找 https://,那将会失败。