php - 将明亮的本地 API 数据拉入我的 Ruby on Rails 应用程序 - 用 PHP 编写的 API 文档

标签 php ruby-on-rails ruby api

我正在尝试构建一个 Rails 应用程序,从多个不同的 SEO 工具 API 中提取数据。对于 Bright Local(请在此处查看他们的 API 文档 - http://apidocs.brightlocal.com/),所有 API 文档示例都是用 PHP 编写的,我无法阅读所有内容。

那么首先,要问一个具体的问题,我将如何用 Ruby 编写这个批处理请求:

<?php
use BrightLocal\Api;
use BrightLocal\Batches\V4 as BatchApi;

$api = new Api('[INSERT_API_KEY]', '[INSERT_API_SECRET]');
$batchApi = new BatchApi($api);
$result = $batchApi->create();
if ($result['success']) {
    $batchId = $result['batch-id'];
}

此外,对于如何让自己适应在我的 Rails 应用程序中使用 API 有什么建议吗?

最佳答案

我们的文档目前仅显示 PHP 示例 - 尽管我们计划对此进行扩展,而 Ruby 是我们希望添加的语言之一。

上述 PHP 代码的简单命令行 CURL 请求如下所示:

curl --data "api-key=<YOUR API KEY HERE>" https://tools.brightlocal.com/seo-tools/api/v4/batch

并且会返回这样的响应:

{"success":true,"batch-id":<RETURNED BATCH ID>}

我们所有的 API 端点都会响应 POST、PUT、GET 或 DELETE。同样重要的是要注意,无论何时使用 POST 或 PUT 发布数据,它都会在请求正文中像“param1=value1¶m2=value2”一样传递,而不是 JSON 编码。

恐怕我根本不懂 Ruby,但像这样的东西可能会提出你想要的请求:

params = {"api-key" => "<YOUR API KEY>"}
Net::HTTP::Post.new("https://tools.brightlocal.com/seo-tools/api/v4/batch").set_form_data(params)

关于php - 将明亮的本地 API 数据拉入我的 Ruby on Rails 应用程序 - 用 PHP 编写的 API 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31886137/

相关文章:

ruby-on-rails - rails : Bundler could not find compatible versions for gem "actionpack":

ruby-on-rails - 嵌套 group_by 和在 Rails 上对 ruby​​ 进行排序

php - 如何使长时间运行的 PHP 脚本立即显示成功消息?

php - 使用 REGEXP 重新查询 MYSQL 中的变量

php - 删除阿拉伯变音符号

mysql - rake gem :install shows error (database is not migrating)/

ruby-on-rails - 为什么我不想到处使用 inverse_of?

ruby - 创建 puppet 包提供程序 - "No command service defined for provider"

ruby - 访问 Ruby 项目的 YAML 文件中的环境变量(使用 ${ENVVAR} 语法)

php - 我的 SQL 缺少什么?