我在我的ruby on rails应用程序中使用RestClient将获取请求发送到我的应用程序的api,如下所示:
RestClient.get(url?params1=<val1>¶m2=<val2>..)
问题是我还必须传递秘密API密钥以访问get请求标头中的api。我不知道如何在请求的标头中传递此参数,以及如何在控制器内访问此参数api_key以验证请求以访问该api。所以我想要这样的东西:
class StudentsController < ApplicationController
before_filter :validate_access, :only => [:<api_name>]
private
def validate_access
.... < I don't have any idea what to write here>
在此strict_access函数中,我想检查请求标头中的api_key的值,以确定是否将为请求授予对该函数的访问权限。
您可以将标题值设置RestClient.get
为2nd参数。
RestClient.get "/url?params1=<val1>¶m2=<val2>..", {x_your_api_token: "YOUR_API_TOKEN"}
在ActionController中,您可以通过 request.headers["X-Your-API-Token"]
def validate_access
api_token = request.headers["X-Your-API-Token"] # header name is case insentsitive
...
end
看到:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句