4

创建我的 Twitter 应用程序后,显示以下警告:

OAuth 设置

您的应用程序的 OAuth 设置。保守“消费者秘密”的秘密。在您的应用程序中,此密钥不应该是人类可读的。

如何保守我的“消费者秘密”?

Twitter_test.php(来源:Jimbo

// Set access tokens here
$settings = array(
    'oauth_access_token' => "My Oauth Access Token",
    'oauth_access_token_secret' => "My Oauth Access Token Secret",
    'consumer_key' => "My Consumer Key",
    'consumer_secret' => "My Consumer Secret"   
    );


$url = 'https://api.twitter.com/1.1/followers/ids.json';
$getfield = '?username=somename';
$requestMethod = 'GET';
$twitter = new TwitterAPIExchange($settings);
echo $twitter->setGetfield($getfield)
             ->buildOauth($url, $requestMethod)
             ->performRequest();

?>

TwitterAPIExchange(来源:twitter-api-php

4

3 回答 3

3

您可以将消费者秘密以序列化格式保存在数据库中,而不是在获取和使用它时取消序列化。

于 2013-05-07T10:21:19.820 回答
3

我将创建一个与 Twitter Api 集成的库,并将数据存储在application/config/中的配置文件中,如给定链接中所述。

为了取悦 Twitter,只需解析:

$this->load->library('encrypt');

echo $this->encrypt->encode('your given secret here');

获取输出,将其存储在配置文件中,当您获取它时:

$this->load->library('encrypt');

$str_secret = $this->encrypt->decode($config['secret']);
  • 加密
    - 不要忘记按照此链接中的说明设置密钥。

请注意,他们要求您这样做以获得最大的安全性,以防有人控制您的 ftp 或类似设备。但是,如果可以解码,则可以读取。这不是最终的解决方案,而只是更可靠的解决方案。

于 2013-05-07T13:02:22.537 回答
1

consumer_secret 是您注册 api 时 twitter 提供的密钥。您可以通过将 twitter 代码放入您的库或任何此类文件夹中来确保其安全,并确保无法使用浏览器 url 直接访问该文件夹。

例如,如果您将 twitter config.php 放在 lib 文件夹中,那么它不应该像这样访问

www.somedomain.com/lib/config.php

于 2013-05-07T10:18:28.003 回答