Box-API调用的示例

时间:2012-04-27 02:39:23

标签: .net rest box-api

我一直在使用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等参数实际上都进入了它。

2 个答案:

答案 0 :(得分:1)

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

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

简而言之,您尝试获取相关信息的文件夹的文件夹ID应插入显示FOLDER_ID的资源网址中。

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

答案 1 :(得分:1)

简单来说,只需忽略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);