访问 AngelList API
Access AngelList API
我正在尝试访问非面向用户的应用程序的 AngelList API。我设法做到了 through curl,但我想在 Rails 中实现自动化。您如何为此目的使用 oAuth 策略?您将访问令牌存储在哪里(没有会话)?
如果有人能给我所有需要的代码(包括控制器和路由),我将不胜感激,这样我就可以使用如下所示的 oAuth strategy 从 GET https://api.angel.co/1/startups/1
中的任何地方获取记录我的代码。
Rails.application.config.middleware.use OmniAuth::Builder do
provider :angellist, ENV['ANGELLIST_KEY'], ENV['ANGELLIST_SECRET']
end
要在您的应用程序中访问 AngelList,您可以:
使用 AngelList API Ruby Gem
gem 安装 angellist_api
如果您还没有注册 AngelList,请注册并访问他们的 API 文档(参见 Angel.co/api)。在他们的 API 页面上,您可以通过注册您的应用来创建 "token for your application"。
使用您的 API 密钥创建一个 RoR 初始化程序文件。如果适用,我建议使用 Figaro gem 或现在 RoR 的标准 .env 文件来设置用于开发、测试、生产和暂存的变量。
奖励:您也可以在没有 gem 的情况下手动执行此操作,方法是创建一个包含 AngelList API URL 中的 API 密钥的 ENV。如果您要像您提到的那样调用记录并将它们保存到您的数据库中,您可以使用:
def self.getAngellist
response = Net::HTTP.get_response(URI.parse(ENV["ANGELIST_API_URL"]))
data = response.body
parsed_response = JSON.parse(data)
parsed_response["startups"].each do |startup|
if Startup.where(:foreign_id => startup["id"]).blank?
unless Startup.name == startup["name"]
e = Startup.new(:foreign_id => startup["id"], :name => startup["name"], :description => HTML_Truncator.truncate(startup["product_desc"], 50), :url => startup["company_url"], :youtube => startup["video_url"], :facebook => startup["facebook_url"], :twitter => startup["twitter_url"], :linkedin => startup["linkedin_url"], :crunchbase => startup["crunchbase_url"], :angellist => startup["angellist_url"])
e.save
end
end
end
end
我正在尝试访问非面向用户的应用程序的 AngelList API。我设法做到了 through curl,但我想在 Rails 中实现自动化。您如何为此目的使用 oAuth 策略?您将访问令牌存储在哪里(没有会话)?
如果有人能给我所有需要的代码(包括控制器和路由),我将不胜感激,这样我就可以使用如下所示的 oAuth strategy 从 GET https://api.angel.co/1/startups/1
中的任何地方获取记录我的代码。
Rails.application.config.middleware.use OmniAuth::Builder do
provider :angellist, ENV['ANGELLIST_KEY'], ENV['ANGELLIST_SECRET']
end
要在您的应用程序中访问 AngelList,您可以:
使用 AngelList API Ruby Gem
gem 安装 angellist_api
如果您还没有注册 AngelList,请注册并访问他们的 API 文档(参见 Angel.co/api)。在他们的 API 页面上,您可以通过注册您的应用来创建 "token for your application"。
使用您的 API 密钥创建一个 RoR 初始化程序文件。如果适用,我建议使用 Figaro gem 或现在 RoR 的标准 .env 文件来设置用于开发、测试、生产和暂存的变量。
奖励:您也可以在没有 gem 的情况下手动执行此操作,方法是创建一个包含 AngelList API URL 中的 API 密钥的 ENV。如果您要像您提到的那样调用记录并将它们保存到您的数据库中,您可以使用:
def self.getAngellist
response = Net::HTTP.get_response(URI.parse(ENV["ANGELIST_API_URL"]))
data = response.body
parsed_response = JSON.parse(data)
parsed_response["startups"].each do |startup|
if Startup.where(:foreign_id => startup["id"]).blank?
unless Startup.name == startup["name"]
e = Startup.new(:foreign_id => startup["id"], :name => startup["name"], :description => HTML_Truncator.truncate(startup["product_desc"], 50), :url => startup["company_url"], :youtube => startup["video_url"], :facebook => startup["facebook_url"], :twitter => startup["twitter_url"], :linkedin => startup["linkedin_url"], :crunchbase => startup["crunchbase_url"], :angellist => startup["angellist_url"])
e.save
end
end
end
end