【问题标题】:Example for Box-API callsBox-API 调用示例
【发布时间】:2012-04-27 02:39:22
【问题描述】:

我一直在使用 box-api v1.0,现在看到有一个新的并且想利用它。但是我对 REST 很陌生,并不真正了解在这里做什么。

我获取文件夹的代码是这样的:

wcGetFolders.OpenReadAsync(new Uri("https://www.box.net/api/1.0/rest?action=get_account_tree&api_key=" + api_key + "&auth_token=" + auth_token + "&folder_id=" + currentFolder + "&params[]=onelevel&params[]=nozip"));

但现在有了新的 API,我不确定如何格式化字符串。

以前我可以将所有参数放在 uri 中。

我还能这样做吗?

新的 API 帮助表明请求如下所示:

https://api.box.com/2.0/folders/FOLDER_ID \
-H "Authorization: BoxAuth api_key=API_KEY&auth_token=AUTH_TOKEN" \

我不知道如何处理反斜杠和引号,基本上我根本不知道如何格式化 uri,即使所有 -h 等参数实际上都进入了它。

【问题讨论】:

  • 我想我解决了。 -H 代表我认为的标题。我现在已经在我的 WebCall 中添加了一个标题

标签: .net rest box-api


【解决方案1】:

文档中的示例请求是针对 cURL 给出的,cURL 是一个用于发出 HTTP 请求的命令行工具,所以这就是示例所指的内容。

v2 Box API 是 RESTful,您可以阅读更多关于 herehere 的信息。

简而言之,您尝试获取相关信息的文件夹的文件夹 ID 应插入到出现 FOLDER_ID 的资源 URL 中。

您的代码示例表明您正在使用 .NET 进行开发,因此我建议您使用可用于 .NET 的 REST 库之一,其中很多是 which are listed here。您可能还会发现利用 REST 客户端(例如 Postman)来玩弄 API 很有帮助。

【讨论】:

    【解决方案2】:

    简单来说,只需忽略 BOX 文档中示例的编写方式即可。他们只需要以独立于编程语言的方式显示信息,在这种情况下他们选择了命令行语法。

    -H 指的是您在发出 HTTP 请求时将传入的标头信息。

    不确定在 .NET 中会如何,但在使用 cURL 库的 PHP 中,它会是这样的:

    $crl = curl_init();
    
    curl_setopt($crl, CURLOPT_URL, 'https://www.box.com/api/2.0/folders/0');
    curl_setopt($crl, CURLOPT_HTTPHEADER, array('Authorization: BoxAuth api_key=API_KEY&auth_token=AUTH_TOKEN',));
    curl_setopt($crl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
    
    $results = curl_exec($crl);
    
    curl_close($crl);
    

    【讨论】:

      猜你喜欢
      • 2014-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-09
      • 2013-04-10
      • 2018-09-02
      • 1970-01-01
      相关资源
      最近更新 更多