Загрузка файлов на onedrive с помощью php

Я долгое время пытался загрузить данные в свой OneDrive с помощью PHP. Я уже много читал об этом, а также нашел проект на github.

Я попробовал этот урок, но не могу продвинуться дальше. https://www.webshark.ee/how-to-upload-files-from-server-to-microsoft-onedrive-using-rest-api-and-php/

Я создаю приложение в Microsoft Azure, чтобы получить идентификатор клиента и многое другое. Я скачал пакет с помощью композитора.

composer requires microsoft/microsoft-graph

Затем я создал свой сценарий на основе первого примера в руководстве. Чего я не знаю, так это как интегрировать поставщика из композитора

мой сценарий выглядит так:

$tenantId = 'your-id-number';
$clientId = 'your-client-id-number';
$clientSecret = 'your-client-secret-number';
$url = 'https://login.microsoftonline.com/' . $tenantId . '/oauth2/token';
$user_token = json_decode($guzzle->post($url, [
    'form_params' => [
        'client_id' => $clientId,
        'client_secret' => $clientSecret,
        'resource' => 'https://graph.microsoft.com/',
        'grant_type' => 'password',
        'username' => '[email protected]',
        'password' => 'your-password'
    ],
])->getBody()->getContents());
$user_accessToken = $user_token->access_token;

$graph = new Graph();
$graph->setAccessToken($user_accessToken);
?>

В настоящее время я получаю сообщение об ошибке только при запуске первого скрипта. Warning: Undefined variable $guzzle in C:\xampp_neu\htdocs\test1\src\test.php on line 6

Вы уверены, что эта проблема каким-либо образом связана с Charts или Composer? Мне кажется очевидным, что скрипт не запускается, поскольку вы нигде не указали $guzzle (как говорилось в сообщении об ошибке)

Nico Haase 24.04.2024 10:02
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
1
113
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Guzzle — это HTTP-клиент для PHP, и это предупреждение сообщает вам, что клиент Guzzle не определен. Есть несколько шагов, чтобы исправить это.

Сначала установите его через Composer, выполнив следующую команду:

composer require guzzlehttp/guzzle

Во-вторых, чтобы использовать пакеты Composer в вашем PHP-скрипте, вам необходимо включить автозагрузчик Composer в начало файла. Это загрузит все пакеты, которые вы используете в текущем скрипте, пропуская при этом все установленные пакеты, которые не будут использоваться:

<?php
require_once 'vendor/autoload.php';

И наконец, вам нужно будет создать экземпляр клиента Guzzle перед его первым использованием:

$guzzle = new GuzzleHttp\Client();

Не имеет отношения к вашему вопросу, но вы заметите дополнительную ошибку, если не используете полное пространство имен для класса Graph():

$graph = new Microsoft\Graph\Graph();

окей, я попробовал. теперь запрос работает, но я получаю неверный запрос на аутентификацию.

bia 25.04.2024 11:56

Рад слышать, что вы добиваетесь прогресса! Похоже, что учебнику, который вы используете, уже несколько лет, поэтому я бы вместо этого рассмотрел официальное руководство по PHP/Graph от Microsoft. Если у вас возникли проблемы, на которые руководство не может ответить, вы можете задать здесь новый вопрос.

Cole 25.04.2024 18:14

чего я не знаю: как я могу получить URL-адрес перенаправления. на моем лазурном портале пусто

bia 27.04.2024 09:59

Другие вопросы по теме