react-chat-stream icon indicating copy to clipboard operation
react-chat-stream copied to clipboard

input.method parameter is not used in getstream()

Open Sheldenburg opened this issue 1 year ago • 2 comments

Hi, Thanks for creating this repo! Very useful for any react Chat interface. I found the method parameter seems a bit redundant. In the example code, you have something like this below.

options: { url: 'http://127.0.0.1:8000/chat', method: 'POST', headers:{ 'Accept': 'application/json' }, body: { 'query': 'Hello! how are you' } }, method: { type: 'body', key: 'query' }, }

However, in the getStream function below, only the 'options' parameter is used.

export const getStream = async (input: string, options: UseChatStreamHttpOptions, method: UseChatStreamInputMethod) => { options = mergeInputInOptions(input, options, method);

const params = '?' + new URLSearchParams(options.query).toString();

const response = await fetch(options.url + params, { method: options.method, headers: { ...DEFAULT_HEADERS, ...options.headers }, body: JSON.stringify(options.body, (_k, v) => v === null ? undefined : v) });

if (!response.ok) throw new Error(response.statusText);

return response.body; };

Sheldenburg avatar Feb 29 '24 18:02 Sheldenburg

@Sheldenburg You can see we use options.method as the method. Does this not work for you?

niels-bosman avatar May 24 '24 08:05 niels-bosman

@Sheldenburg You can see we use options.method as the method. Does this not work for you?

Yes, it does. But in the type definition, you also have 'method' outside of options. This one has never got used.

options: { url: 'http://127.0.0.1:8000/chat', method: 'POST', headers:{ 'Accept': 'application/json' }, body: { 'query': 'Hello! how are you' } }, method: { type: 'body', key: 'query' }, }

Sheldenburg avatar Jun 02 '24 00:06 Sheldenburg