Argument of type '"blob"' is not assignable to parameter of type 'ResponseType' in SPFX project
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 38/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- typescript
- Ambito
- api
Direzione di ricerca
Start with the responseType("blob") call in src/webparts/helloWorld/HelloWorldWebPart.ts and inspect the @microsoft/sp-http 1.18.2 types used by MSGraphClientV3. Run gulp serve to reproduce the TypeScript error; done means the blob response type is accepted and the sample builds successfully.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Bug Report
Hello, I've created a new web part in my SPFX project and my SPFX package version was upgraded from 1.17 to 1.18 automatically by the creation wizard.
This seem to have brought a breaking change with existing Microsoft Graph code used in the project.
Prerequisites
- Can you reproduce the problem?
- Are you running the latest version?
- Are you reporting to the correct repository?
- Did you perform a cursory search?
For more information, see the CONTRIBUTING guide.
Description
Here is my code:
private async _getUserProfilePicture(): Promise<HTMLImageElement | void> {
return await this.context.msGraphClientFactory.getClient('3').then(
async (graphclient: MSGraphClientV3) => {
return await graphclient
.api('/me/photo/$value')
.responseType("blob")
.get()
// eslint-disable-next-line @typescript-eslint/no-explicit-any
.then((blob: Blob): Promise<any> => {
// eslint-disable-next-line no-async-promise-executor
return new Promise(async (resolve, reject) => {
const b64 = await blobToBase64(blob);
const img = new Image();
img.src = b64;
this.properties.hasProfilePicture = true;
return resolve(img);
});
})
.catch((e) => {
// ...
});
});
And the IDE error:
Argument of type '"blob"' is not assignable to parameter of type 'ResponseType'.ts(2345)
Console Errors: [Is there any console error]
Screenshots: [If applicable, add screenshots to help explain your problem]
Steps to Reproduce
- Create a new folder and initialize a new SPFX solution:
yo @microsoft/sharepoint - Choose WebPart for the client-side component and React for template, leave everything else default
- Install the @microsoft/sp-http package for the MSGraphClientV3:
npm i @microsoft/sp-http - Modify config/serve.json with your SharePoint tenant URL
- Open up
src/webparts/helloWorld/HelloWorldWebPart.ts - Modify the
onInitmethod to look like this:
protected async onInit(): Promise<void> {
await this.context.msGraphClientFactory.getClient('3').then(
async (graphclient: MSGraphClientV3) => {
return await graphclient
.api('/me/photo/$value')
.responseType("blob")
.get()
// eslint-disable-next-line @typescript-eslint/no-explicit-any
.then((blob: Blob): Promise<any> => {
// eslint-disable-next-line no-async-promise-executor
return new Promise(async (resolve, reject) => {
return resolve(blob);
});
})
});
}
- Run the
gulp servecommand - The build will fail:
Error - [tsc] src/webparts/helloWorld/HelloWorldWebPart.ts(45,25): error TS2345: Argument of type '"blob"' is not assignable to parameter of type 'ResponseType'.
Expected behavior: [What you expected to happen]
The string "blob" to be accepted as an argument for responseType method on the GraphRequest.
Actual behavior: [What actually happened]
Cannot build because of error.
Additional Context
"@microsoft/sp-http": "^1.18.2" was installed
Usage Information
Request ID - Value of the requestId field if you are receiving a Graph API error response
SDK Version - [SDK version you are using]
- Node (Check, if using Node version of SDK)
Node Version - 18
- Browser (Check, if using Browser version of SDK)
Browser Name - [The name of Browser that you are using for SDK]
Version - [The version of the browser you are using]
- Lingua principale
- TypeScript
- Stelle
- 833
- Fork
- 240
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
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.
Altre issue di microsoftgraph/msgraph-sdk-javascript
-
status:waiting-for-triage
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 62/100
-
Is anyone here? Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
microsoftgraph/msgraph-sdk-javascript#2005 · 1 reazione ·
-
Is it really correct that the Javascript version of the graph SDK doesn't offer typed requests? Apertastatus:waiting-for-triage
Difficoltà 5/5 Più di una settimana Idoneità per principianti 42/100
-
status:waiting-for-triage type:bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
microsoftgraph/msgraph-sdk-javascript#1999 · 2 commenti · 1 reazione ·
-
status:waiting-for-triage type:bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
Tutte le issue di microsoftgraph/msgraph-sdk-javascript
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
bug v2
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
modelcontextprotocol/inspector#2458 · 1 commento ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
railmapgen/rmp-gallery#4068 ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
carbon-design-system/ibm-products#9907 ·