Class: Oauth2China::Sina
Instance Method Summary collapse
- #comments_create(id, comment, comment_ori = 0) ⇒ Object
- #friendships_create(uid) ⇒ Object
- #get_uid ⇒ Object
-
#home_timeline(options = {}) ⇒ Object
since_id false int64 若指定此参数,则返回ID比since_id大的微博(即比since_id时间晚的微博),默认为0。 max_id false int64 若指定此参数,则返回ID小于或等于max_id的微博,默认为0。 count false int 单页返回的记录条数,默认为50。 page false int 返回结果的页码,默认为1。 base_app false int 是否只获取当前应用的数据。0为否(所有数据),1为是(仅当前应用),默认为0。 feature false int 过滤类型ID,0:全部、1:原创、2:图片、3:视频、4:音乐,默认为0。 trim_user false int 返回值中user字段开关,0:返回完整user字段、1:user字段仅返回user_id,默认为0。.
-
#initialize(access_token) ⇒ Sina
constructor
A new instance of Sina.
- #place_pois_add_checkin(poiid, status, options = {}) ⇒ Object
-
#statuses_friends_timeline(options = {}) ⇒ Object
since_id false int64 若指定此参数,则返回ID比since_id大的微博(即比since_id时间晚的微博),默认为0。 max_id false int64 若指定此参数,则返回ID小于或等于max_id的微博,默认为0。 count false int 单页返回的记录条数,默认为50。 page false int 返回结果的页码,默认为1。 base_app false int 是否只获取当前应用的数据。0为否(所有数据),1为是(仅当前应用),默认为0。 feature false int 过滤类型ID,0:全部、1:原创、2:图片、3:视频、4:音乐,默认为0。 trim_user false int 返回值中user字段开关,0:返回完整user字段、1:user字段仅返回user_id,默认为0。.
-
#statuses_mentions(options = {}) ⇒ Object
since_id false int64 若指定此参数,则返回ID比since_id大的微博(即比since_id时间晚的微博),默认为0。 max_id false int64 若指定此参数,则返回ID小于或等于max_id的微博,默认为0。 count false int 单页返回的记录条数,默认为50。 page false int 返回结果的页码,默认为1。 filter_by_author false int 作者筛选类型,0:全部、1:我关注的人、2:陌生人,默认为0。 filter_by_source false int 来源筛选类型,0:全部、1:来自微博、2:来自微群,默认为0。 filter_by_type false int 原创筛选类型,0:全部微博、1:原创的微博,默认为0。 trim_user false int 返回值中user字段开关,0:返回完整user字段、1:user字段仅返回user_id,默认为0。.
- #statuses_update(status, latitude = nil, longitutde = nil, annotation = nil) ⇒ Object
- #statuses_upload(status, picture, latitude = nil, longitutde = nil, annotation = nil) ⇒ Object
- #users_show(uid) ⇒ Object
Constructor Details
#initialize(access_token) ⇒ Sina
Returns a new instance of Sina.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/oauth2_china.rb', line 11 def initialize(access_token) @access_token = access_token @tmpl = Hashie::Mash.new({ access_token: access_token, }) @conn = Faraday.new(:url => 'https://api.weibo.com') do |faraday| faraday.request :multipart faraday.request :url_encoded # form-encode POST params #faraday.response :logger # log requests to STDOUT faraday.adapter Faraday.default_adapter # make requests with Net::HTTP end end |
Instance Method Details
#comments_create(id, comment, comment_ori = 0) ⇒ Object
75 76 77 78 79 80 81 82 83 84 |
# File 'lib/oauth2_china.rb', line 75 def comments_create(id, comment, comment_ori = 0) params = @tmpl.clone params.id = id params.comment = comment params.comment_ori = comment_ori res = @conn.post("/2/comments/create.json", params).body Hashie::Mash.new(JSON.parse res) end |
#friendships_create(uid) ⇒ Object
49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/oauth2_china.rb', line 49 def friendships_create(uid) params = @tmpl.clone if uid.is_a? String params.uid = uid else params.screen_name = uid end res = @conn.post("/2/friendships/create.json", params).body Hashie::Mash.new(JSON.parse res) end |
#get_uid ⇒ Object
69 70 71 72 73 |
# File 'lib/oauth2_china.rb', line 69 def get_uid params = @tmpl.clone res = @conn.get("/2/account/get_uid.json", params).body Hashie::Mash.new(JSON.parse res) end |
#home_timeline(options = {}) ⇒ Object
since_id false int64 若指定此参数,则返回ID比since_id大的微博(即比since_id时间晚的微博),默认为0。 max_id false int64 若指定此参数,则返回ID小于或等于max_id的微博,默认为0。 count false int 单页返回的记录条数,默认为50。 page false int 返回结果的页码,默认为1。 base_app false int 是否只获取当前应用的数据。0为否(所有数据),1为是(仅当前应用),默认为0。 feature false int 过滤类型ID,0:全部、1:原创、2:图片、3:视频、4:音乐,默认为0。 trim_user false int 返回值中user字段开关,0:返回完整user字段、1:user字段仅返回user_id,默认为0。
120 121 122 123 124 |
# File 'lib/oauth2_china.rb', line 120 def home_timeline( = {}) params = @tmpl.clone.merge() res = @conn.get("/2/home/timeline.json", params).body Hashie::Mash.new(JSON.parse res) end |
#place_pois_add_checkin(poiid, status, options = {}) ⇒ Object
126 127 128 129 130 131 132 133 134 |
# File 'lib/oauth2_china.rb', line 126 def place_pois_add_checkin(poiid, status, = {}) params = @tmpl.clone.merge() params.poiid = poiid params.status = status res = @conn.post("/2/place/pois/add_checkin.json", params).body Hashie::Mash.new(JSON.parse res) end |
#statuses_friends_timeline(options = {}) ⇒ Object
since_id false int64 若指定此参数,则返回ID比since_id大的微博(即比since_id时间晚的微博),默认为0。 max_id false int64 若指定此参数,则返回ID小于或等于max_id的微博,默认为0。 count false int 单页返回的记录条数,默认为50。 page false int 返回结果的页码,默认为1。 base_app false int 是否只获取当前应用的数据。0为否(所有数据),1为是(仅当前应用),默认为0。 feature false int 过滤类型ID,0:全部、1:原创、2:图片、3:视频、4:音乐,默认为0。 trim_user false int 返回值中user字段开关,0:返回完整user字段、1:user字段仅返回user_id,默认为0。
107 108 109 110 111 |
# File 'lib/oauth2_china.rb', line 107 def statuses_friends_timeline( = {}) params = @tmpl.clone.merge() res = @conn.get("/2/statuses/friends_timeline.json", params).body Hashie::Mash.new(JSON.parse res) end |
#statuses_mentions(options = {}) ⇒ Object
since_id false int64 若指定此参数,则返回ID比since_id大的微博(即比since_id时间晚的微博),默认为0。 max_id false int64 若指定此参数,则返回ID小于或等于max_id的微博,默认为0。 count false int 单页返回的记录条数,默认为50。 page false int 返回结果的页码,默认为1。 filter_by_author false int 作者筛选类型,0:全部、1:我关注的人、2:陌生人,默认为0。 filter_by_source false int 来源筛选类型,0:全部、1:来自微博、2:来自微群,默认为0。 filter_by_type false int 原创筛选类型,0:全部微博、1:原创的微博,默认为0。 trim_user false int 返回值中user字段开关,0:返回完整user字段、1:user字段仅返回user_id,默认为0。
94 95 96 97 98 |
# File 'lib/oauth2_china.rb', line 94 def statuses_mentions( = {}) params = @tmpl.clone.merge() res = @conn.get("/2/statuses/mentions.json", params).body Hashie::Mash.new(JSON.parse res) end |
#statuses_update(status, latitude = nil, longitutde = nil, annotation = nil) ⇒ Object
26 27 28 29 30 31 32 33 34 35 |
# File 'lib/oauth2_china.rb', line 26 def statuses_update(status, latitude = nil, longitutde = nil, annotation = nil) params = @tmpl.clone params.status = status params.lat = latitude if latitude params.long = longitutde if longitutde params.annotation = annotation if annotation res = @conn.post("/2/statuses/update.json", params).body Hashie::Mash.new(JSON.parse res) end |
#statuses_upload(status, picture, latitude = nil, longitutde = nil, annotation = nil) ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/oauth2_china.rb', line 37 def statuses_upload(status, picture, latitude = nil, longitutde = nil, annotation = nil) params = @tmpl.clone params.pic = Faraday::UploadIO.new(picture, 'image/jpeg') params.status = status params.lat = latitude if latitude params.long = longitutde if longitutde params.annotation = annotation if annotation res = @conn.post("/2/statuses/upload.json", params).body Hashie::Mash.new(JSON.parse res) end |
#users_show(uid) ⇒ Object
62 63 64 65 66 67 |
# File 'lib/oauth2_china.rb', line 62 def users_show(uid) params = @tmpl.clone params.uid = uid res = @conn.get("/2/users/show.json", params).body Hashie::Mash.new(JSON.parse res) end |