Incomplete typing in crm.imports.coreApi.create prototype (HttpFile)
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 35/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- node.js, typescript
- Ambito
- api
Direzione di ricerca
Inizia dal tipo HttpFile utilizzato da crm.imports.coreApi.create e confrontalo con l’esempio «Import contacts» nel README. Controlla i tipi di body di node-fetch citati nell’issue, quindi verifica che un progetto TypeScript possa passare fs.createReadStream(fileName) senza un cast e che l’esempio venga compilato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Issue
I tried to use the Import contacts example from the README in a typescript project:
const file = {
data: fs.createReadStream(fileName),
name: fileName,
};
// [...]
const response = await hubspotClient.crm.imports.coreApi.create(file, JSON.stringify(importRequest));
And I get the following type error:
error TS2740: Type 'ReadStream' is missing the following properties from type 'Buffer': write, toJSON, equals, compare, and 97 more.
I think that the HttpFile type definition is incomplete, because in its current state it only expects to receive a Buffer:
export type HttpFile = {
data: Buffer;
name: string;
};
But the node-fetch library can accept many types in the request body.
Proposal
I suggest making at least this change:
export type HttpFile = {
data: Buffer|ReadableStream;
name: string;
};
But perhaps to be as complete as possible, the following change would be preferable:
export type HttpFile = {
data: Buffer|ReadableStream|ArrayBuffer|ArrayBufferView|string;
name: string;
};
Workaround:
In the meantime, I use the following (ugly) code, if it can help anyone experiencing the same problem. :
const file = {
data: fs.createReadStream(fileName) as any,
name: fileName,
};
- Lingua principale
- TypeScript
- Stelle
- 403
- Fork
- 117
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
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 HubSpot/hubspot-api-nodejs
-
console.error call during retry cannot be disabledForse già presa @alloutflo l’ha presa 78 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
HubSpot/hubspot-api-nodejs#684 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
HubSpot/hubspot-api-nodejs#700 · 3 commenti · 7 reazioni ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
HubSpot/hubspot-api-nodejs#699 ·
-
[v24.0.x] CRM create Import API throws "body.getHeaders is not a function" errorForse già presa @alloutflo l’ha presa 78 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
HubSpot/hubspot-api-nodejs#696 · 1 commento ·
-
Difficoltà 3/5 3-5 giorni Idoneità per principianti 52/100
HubSpot/hubspot-api-nodejs#695 · 1 commento ·
Tutte le issue di HubSpot/hubspot-api-nodejs
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
awslabs/visual-asset-management-system#804 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
restatedev/sdk-typescript#813 ·
-
bug desktop P1 session XS
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
Merit-Systems/x402scan#1312 ·
-
type:bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
Azure/apiops-cli#331 ·
I maintainer di solito rispondono entro 3 giorni