我正在整合Box.com Api从我的网站上传文件。
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="boxap" /><input type="submit" name="sub" />
</form>
<?php
$tmpfile = $_FILES['boxap']['tmp_name'];
$filename = basename($_FILES['boxap']['name']);
$_POST['boxap'] = '@'.$tmpfile;
$upload_url = 'https://upload.box.net/api/1.0/upload/token/folderid';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $upload_url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
我有令牌,但我在哪里可以获得文件夹ID?另外,方法是我将文件上传到box.com 请帮忙
答案 0 :(得分:0)
我在哪里可以获得文件夹ID?
点击folder API endpoint抓取文件夹详细信息。通过将FOLDER_ID
作为0
传递,您将获得根文件夹,以便您可以遍历子项以查找文件夹。这些ID不会改变,因此您可以在本地存储它们。
curl https://api.box.com/2.0/folders/FOLDER_ID -H "Authorization: Bearer ACCESS_TOKEN"
此外,我将文件上传到box.com
的方法还可以当然,它可以发布到box.com。我不确定你在问什么,但使用cURL很好。它用throughout their documentation。但是,您似乎缺少一些多部分POST数据;
attributes
name
- 文件名称parent
- 正在上传的文件夹对象
id
- 父母的孩子。指定父对象的fold_id。使用0作为根文件夹。file
curl https://upload.box.com/api/2.0/files/content \
-H "Authorization: Bearer ACCESS_TOKEN" -X POST \
-F attributes='{"name":"tigers.jpeg", "parent":{"id":"11446498"}}' \
-F file=@myfile.jpg