如何使用最少的代码获得user_timeline?

手滑点了滑稽手滑点了滑稽提问于
汐夜回答于

下面是我最近用它编写的一个实现PHP和cURL

<?php
    function buildBaseString($baseURI, $method, $params) {
        $r = array();
        ksort($params);
        foreach($params as $key=>$value){
            $r[] = "$key=" . rawurlencode($value);
        }
        return $method."&" . rawurlencode($baseURI) . '&' . rawurlencode(implode('&', $r));
    }

    function buildAuthorizationHeader($oauth) {
        $r = 'Authorization: OAuth ';
        $values = array();
        foreach($oauth as $key=>$value)
            $values[] = "$key=\"" . rawurlencode($value) . "\"";
        $r .= implode(', ', $values);
        return $r;
    }

    $url = "https://api.twitter.com/1.1/statuses/user_timeline.json";

    $oauth_access_token = "YOURVALUE";
    $oauth_access_token_secret = "YOURVALUE";
    $consumer_key = "YOURVALUE";
    $consumer_secret = "YOURVALUE";

    $oauth = array( 'oauth_consumer_key' => $consumer_key,
                    'oauth_nonce' => time(),
                    'oauth_signature_method' => 'HMAC-SHA1',
                    'oauth_token' => $oauth_access_token,
                    'oauth_timestamp' => time(),
                    'oauth_version' => '1.0');

    $base_info = buildBaseString($url, 'GET', $oauth);
    $composite_key = rawurlencode($consumer_secret) . '&' . rawurlencode($oauth_access_token_secret);
    $oauth_signature = base64_encode(hash_hmac('sha1', $base_info, $composite_key, true));
    $oauth['oauth_signature'] = $oauth_signature;

    // Make requests
    $header = array(buildAuthorizationHeader($oauth), 'Expect:');
    $options = array( CURLOPT_HTTPHEADER => $header,
                      //CURLOPT_POSTFIELDS => $postfields,
                      CURLOPT_HEADER => false,
                      CURLOPT_URL => $url,
                      CURLOPT_RETURNTRANSFER => true,
                      CURLOPT_SSL_VERIFYPEER => false);

    $feed = curl_init();
    curl_setopt_array($feed, $options);
    $json = curl_exec($feed);
    curl_close($feed);

    $twitter_data = json_decode($json);

//print it out
print_r ($twitter_data);

?>

这可以从命令行运行:

$ php <name of PHP script>.php

回答过的其他问题

AI在智能家居行业的现状及趋势?

智能家居领域主要分为家庭自动化、家庭娱乐、环境辅助、生活能源管理五个方面,其中家庭自动化、家庭安全和家庭娱乐处于主要地位。而这些领域在近些年得到人工智能的助力后得到了飞速的发展。如果硬件是智能家居的骨骼的话, 那么人工智能就是智能家居的灵魂所在。这也是为什么智能家居的概念在很多年...... 展开详请

使用Maven构建时的slf4j版本冲突?

排除是非常不必要的,也许也是相当误导人的。相反,明示将slf4j-api包含在您的项目pom文件。就这样!

这种方法利用了Maven的传递性规则:最近的依赖声明获胜。

Python中meshgrid的用途是什么??

已采纳
meshgrid是用x值数组和y值数组创建矩形网格。 例如,如果我们想要创建一个网格,在x和y两个方向上,每个整数值在0到4之间都有一个点。要创建矩形网格,我们需要x和y积分。 x[0,0] = 0 y[0,0] = 0 x[0,1] = 0 y[0,1] = 1 ...... 展开详请

如何使用Python将字符串复制到Windows上的剪贴板上?

如果只需要将一些文本放到系统剪贴板上,就可以这样做: from Tkinter import Tk r = Tk() r.withdraw() r.clipboard_clear() r.clipboard_append('i can has clipboardz?') r.u...... 展开详请

创建自定义UIView时出现问题,使用@IBOutlet发现Xib错误为零

问题是如果你调用init(frame:)a UIView,它将不会被你的界面构建器(storyboard / Xib)初始化。 所以你应该用Xib初始化你的视图。就像- var content: String = "" static public func instance(...... 展开详请

使用Codeigniter中的URL发送带附件的电子邮件

我还不能评论,但你应该尝试设置内容类型和编码pdf。以下是我目前用于在codeigniter中发送带附件的电子邮件。 $form = base_url(). 'index.php/Store/GI/' .$data[0]. '.pdf'; $attachment...... 展开详请

所属标签

扫码关注云+社区

领取腾讯云代金券