使用Ruby寫針對http header應用練習Services

--

近期遇到不少需要在header上處理的技巧,就練習寫了這一個基礎service架構,可以自己延伸開發各專案需求所需要的應用,練習把需要標頭放到header上,拿到自己要的東西。

主要就是建立一個 service/http_service.rb (檔名可以自己定義)


# 使用的require, 可依照自己需求增加
require 'net/http'

def initialize(url, headers, method)
@method = method
@url = url
@headers = headers

xxx_headers
end

def xxx_headers
uri = URI.parse(@url)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = (uri.scheme == "https")

request = Net::HTTP::Get.new(uri.request_uri)

puts "把header標頭重要資訊送到這裡"
request['Authorization'] = "Bearer #{@token}" if @token
request['key'] = @key if @key
request['secret'] = @secret if @secret
request['user'] = @user if @user
request['pwd'] = @pwd if @pwd
#request['token'] = @token if @token

@headers.each do |key, value|
request[key] = value
end

@response = http.request(request)
@response.each_header.each_with_object({}) { |(k, v), hash| hash[k] = v }
end

# 下面這就依照需求,寫你要拿什麼..等等?
def set_body
p @response.body
end

def set_photo
# 這裡面取得需要api權限的圖片或檔案的邏輯...
end

--

--