microsoftgraph / microsoftgraph/msgraph-sdk-php
Unable to send large attachment: LargeFileUploadTask and headers
Nessuno ha ancora preso questa issue.
- Lingua principale
- PHP
- Stelle
- 669
- Fork
- 150
- Merge medio
- 15h 21m
- PR unite (30g)
- 3
Descrizione
Unable to upload large attachment. In the file Microsoft\Kiota\Abstractions\RequestHeaders, the array_keys function is used, which casts a string to a number. PHP 8.4 on x64 does this.
In the getAll method, it is cast and then an error is returned: Since guzzlehttp/psr7 2.11: Passing int to GuzzleHttp\Psr7\Request::__construct() is deprecated; guzzlehttp/psr7 3.0 requires string|string[].
Instead of array_keys, you must use foreach.
A method with array_keys that casts string to int.
public function getAll(): array
{
$result = [];
foreach ($this->headers as $key => $value) {
$result[$key] = array_keys($value);
}
return $result;
}
A method with foreach that works.
public function getAll(): array
{
$result = [];
foreach ($this->headers as $key => $value) {
foreach ($value as $k => $v) {
$result[$key][] = strval($k);
}
//$result[$key] = array_keys($value);
}
return $result;
}
After this change, sending large attachments works.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Iniziare in Microsoft\Kiota\Abstractions\RequestHeaders e ispezionare il metodo getAll, in particolare la gestione di array_keys dei valori degli header. Riprodurre o verificare il percorso di caricamento degli allegati di grandi dimensioni con PHP 8.4 e confermare che getAll restituisca chiavi degli header di tipo string e che gli allegati di grandi dimensioni possano essere inviati senza la Guzzle request deprecation.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- php
- Ambito
- api
- Tipo di issue
- Bug
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Stato di attività
- Tranquilla
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 68/100