2012-02-19 28 views
1

我設法讓法拉第從一個.rb文件發出一個POST請求到一個Google Calander。我想在我的應用程序中使用此功能來檢查日曆上的忙/閒響應,然後再選擇日期,然後向用戶顯示可用時間列表。將Faraday POST請求與Rails應用程序結合在一起。 AJAX最好?

response = Faraday.post do |req| 
req.url 'https://www.googleapis.com/calendar/v3/freeBusy?key=myapikey' 
req.headers['Content-Type'] = 'application/json' 
req.body = '{ "items": [ { "id": mycalendar } ], "timeMin": "2011-02-14T00:09:35Z", "timeMax": "2011-02-14T00:09:40Z" }' 
end 

是否最好將函數放在約會模型中,然後在用戶選擇日期時調用AJAX?或者我會更好地將它全部預緩存在本地表中?

感謝您的幫助!

回答

1

第一次嘗試:

require 'faraday' 

class Booking < ActiveRecord::Base 

def checktime(calid) 

    response = Faraday.post do |req| 
    req.url 'https://www.googleapis.com/calendar/v3/freeBusy?key=AIzaSyBsObpXXF6DQoZWj2U9QxoEQ4vdZ6GvNfI' 
    req.headers['Content-Type'] = 'application/json' 
    req.body = "{ 'items': [ { 'id': '#{calid}' } ], 'timeMin': '2012-02-19T19:35:00Z', 'timeMax': '2012-02-19T19:40:00Z' }" 
    end 

response_json = JSON.parse response.body 

if response_json["calendars"]["busy"] == nil 
    return true 
else 
    return false 
end 

end 
相關問題