Reputation: 111
I've come across a really weird (and a little alarming) problem.
Here's my CURL:
$filename = $_FILES['file']['name'];
$headers = array(
"Authorization: Bearer " . $token,
"Host: graph.microsoft.com",
"Content-Type: application/json",
"Content-Length: 0",
);
$postfile = curl_init('https://graph.microsoft.com/v1.0/' . $userid . '/drive/root:/{folder}/' . $filename . ':/content');
curl_setopt($postfile, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($postfile, CURLOPT_HTTPHEADER, $headers);
curl_setopt($postfile, CURLOPT_FOLLOWLOCATION, 1);
$result = curl_exec($postfile);
curl_close($postfile);
This is what OneDrive looks like immediately after:
And this is what Sharepoint looks like immediately after:
Anyone know why this is happening?
Upvotes: 1
Views: 1188
Reputation: 4174
There is a slight correction you will have to do.
The endpoint you are using
https://graph.microsoft.com/v1.0/<userid>/drive/....
Will return only the root sharepoint Drive.
If you would like to use get the OneDrive URL other's person or your OneDrive you will have to use the below.
To access a specific user's one drive
https://graph.microsoft.com/v1.0/users/<userid>/drive/...
To access yours, you could the below
https://graph.microsoft.com/v1.0/me/drive/...
To access a specific users drive => ...v1.0/users/<userid>/...
instead of ...v1.0/<userid>/....
Note : You will need additional permission if you are accessing other person's onedrive.
Upvotes: 1