2013-01-22 55 views
0

爲了檢索文件夾的內容我必須使用以下url https://www.googleapis.com/drive/v2/files?q='root' 所以我認爲它應該通過傳遞一個附加參數如何在google-api-ruby-client中設置搜索參數

@client.execute(
    :api_method => @drive.files.list , 
    :parameters =>{q=> "title='root'" }) 

但這不起作用

發生錯誤:{ 「錯誤」=> [{ 「域」=> 「全球」, 「理」=> 「無效的」, 「消息」= >「無效值」,「locationType」=>「參數」,「位置」=>「q」}],「code」=> 400,「message」=>「無效值」}

當我看到請求URI

https://www.googleapis.com/drive/v2/files?q=title%253D%27levelA%27 

我第一次嘗試是用戶URI.encode「稱號=‘根’」不工作既不這是很明顯的。 我真的不知道如何保持單引號?

最佳, 菲利普

P.S:一個鏈接到所提到的創業板http://rubydoc.info/github/google/google-api-ruby-client/frames

回答

1

OK,現在我找到了一個有效的解決方案,即使它是一個非常麻煩的。

search = CGI.escape("q='root'") 
u.query = search 
u= Addressable::URI.parse "https://www.googleapis.com/drive/v2/files" 
req=Google::APIClient::Request.new(:uri=> u) 
client.execute req 

我希望這可以幫助別人..