2015-12-30 40 views
1

我正在Rails上爲應用程序構建一個API,對於我正在使用的身份驗證devise_token_auth以及使用API​​的應用程序一側,我使用的是httparty,devise_token_auth有一個current_user方法,該方法返回用戶如果它已登錄或零,否則,所以我想要的是在使用該API的應用程序的一側看到,如果用戶登錄在那裏,爲此我想知道什麼是最好的方法來檢查響應JSON爲空。知道Ruby on Rails中的響應是否爲null的最佳方法是什麼?

這是我在對象上使用inspect方法時獲得的一部分,該方法獲取從HTTParty到API的請求返回的值。

#<HTTParty::Response:0x10 parsed_response=nil, @response=#<Net::HTTPOK 200 OK readbody=true>, @headers={"server"=>["Cowboy"], "date"=>["Wed, 30 Dec 2015 15:13:22 GMT"], "connection"=>["close"] blah... blah... blah... 

P.S:現在如果我檢查,如果在JSON響應的長度等於0,我可以判斷,如果是空的,但我不知道是否有更好的方法來確定這一點。

回答

2

這個問題並不完全清楚你是如何調用你的HTTParty請求的,你爲什麼要發佈響應對象而不是響應的主體,這是我假設你想檢查存在/存在。如果響應主體是字符串,則可能需要JSON.parse();或者您可能需要在響應對象本身上調用.body以獲取您要查找的JSON。也許這將有助於:

require 'json' 

# your_request = however you're calling your API w/HTTParty 
JSON.parse(your_request.body) == {} 

希望這有助於! :)

相關問題