Module: OauthChina::Upload
- Included in:
- OAuth
- Defined in:
- lib/oauth_china/upload.rb
Instance Method Summary collapse
- #params_without_pic_field(options) ⇒ Object
-
#set_multipart_field(req, params) ⇒ Object
mutipart编码:www.ietf.org/rfc/rfc1867.txt.
-
#sign_without_pic_field(req, access_token, options) ⇒ Object
图片不参与签名.
-
#upload(url, options) ⇒ Object
NOTICE: 各个微博字段名可能不统一.
Instance Method Details
#params_without_pic_field(options) ⇒ Object
30 31 32 |
# File 'lib/oauth_china/upload.rb', line 30 def params_without_pic_field() .except(:pic) end |
#set_multipart_field(req, params) ⇒ Object
mutipart编码:www.ietf.org/rfc/rfc1867.txt
25 26 27 28 |
# File 'lib/oauth_china/upload.rb', line 25 def set_multipart_field(req, params) multipart_post = Multipart::MultipartPost.new multipart_post.set_form_data(req, params) end |
#sign_without_pic_field(req, access_token, options) ⇒ Object
图片不参与签名
18 19 20 21 22 |
# File 'lib/oauth_china/upload.rb', line 18 def sign_without_pic_field(req, access_token, ) req.set_form_data(params_without_pic_field()) self.consumer.sign!(req, access_token) req end |
#upload(url, options) ⇒ Object
NOTICE: 各个微博字段名可能不统一
6 7 8 9 10 11 12 13 14 15 |
# File 'lib/oauth_china/upload.rb', line 6 def upload(url, ) url = URI.parse(url) http = Net::HTTP.new(url.host, url.port) req = Net::HTTP::Post.new(url.request_uri) req = sign_without_pic_field(req, self.access_token, ) req = set_multipart_field(req, ) http.request(req) end |