@procedures/http 0.2.3 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -76,6 +76,21 @@ export declare function prepare(parts: RequestParts, path: ProcedurePath, settin
76
76
  headers?: Record<string, string>;
77
77
  body?: Buffer | undefined;
78
78
  }): PreparedRequest;
79
+ /** The parts of a stream request (`http.ndjson`, `http.sse`): GET, or POST with a body. */
80
+ export interface StreamRequestParts extends RequestParts {
81
+ readonly method?: "GET" | "POST" | undefined;
82
+ /** A body of text. */
83
+ readonly body?: string | undefined;
84
+ /** A body of JSON. */
85
+ readonly json?: unknown;
86
+ }
87
+ /**
88
+ * This function makes the request of a stream procedure. The method is POST with a body, and GET
89
+ * without one. A body of JSON gets `content-type: application/json`, and a body of text gets
90
+ * `text/plain`. A header of the input replaces these headers. Two bodies, or a GET with a body,
91
+ * throw.
92
+ */
93
+ export declare function prepareStream(parts: StreamRequestParts, path: ProcedurePath, settings: HttpSettings, headers: Record<string, string>): PreparedRequest;
79
94
  /** The text of a header value: several values are joined with a comma. */
80
95
  export declare function headerText(value: string | string[] | undefined): string | undefined;
81
96
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"exchange.d.ts","sourceRoot":"","sources":["../src/exchange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exchange.d.ts","sourceRoot":"","sources":["../src/exchange.ts"],"names":[],"mappings":"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"}
package/dist/exchange.js CHANGED
@@ -85,6 +85,25 @@ export function prepare(parts, path, settings, extra = {}) {
85
85
  maxRedirects: parts.maxRedirects ?? DEFAULT_MAX_REDIRECTS,
86
86
  };
87
87
  }
88
+ /**
89
+ * This function makes the request of a stream procedure. The method is POST with a body, and GET
90
+ * without one. A body of JSON gets `content-type: application/json`, and a body of text gets
91
+ * `text/plain`. A header of the input replaces these headers. Two bodies, or a GET with a body,
92
+ * throw.
93
+ */
94
+ export function prepareStream(parts, path, settings, headers) {
95
+ const name = path.join(".");
96
+ if (parts.body !== undefined && parts.json !== undefined)
97
+ throw new Error(`${name}: give only one of body and json`);
98
+ const body = parts.json !== undefined ? { bytes: Buffer.from(JSON.stringify(parts.json), "utf8"), type: "application/json" }
99
+ : parts.body !== undefined ? { bytes: Buffer.from(parts.body, "utf8"), type: "text/plain; charset=utf-8" }
100
+ : undefined;
101
+ const method = parts.method ?? (body !== undefined ? "POST" : "GET");
102
+ if (method === "GET" && body !== undefined)
103
+ throw new Error(`${name}: a GET request has no body: use the method POST`);
104
+ const extra = body === undefined ? headers : { ...headers, "content-type": body.type };
105
+ return prepare({ ...parts, method }, path, settings, { headers: extra, body: body?.bytes });
106
+ }
88
107
  /** A `lookup` for the socket that gives only the addresses that the check allowed. */
89
108
  function pinnedLookup(target) {
90
109
  return (_hostname, options, callback) => {
@@ -1 +1 @@
1
- {"version":3,"file":"exchange.js","sourceRoot":"","sources":["../src/exchange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exchange.js","sourceRoot":"","sources":["../src/exchange.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EASL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA8LvE;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,eAAoF,CAAC;eAE/F,UAAU;AAEzB,4FAA4F;AAC5F,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IAC1D,sEAAsE;IACtE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,kGAAkG;IAClG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChD;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,eAAe,CAQjF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,GAAE,iBAAsC,EAAE,OAAO,GAAE,iBAAsB,GAAG,IAAI,CAE9H"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EASL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAiMvE;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,eAAoF,CAAC;eAE/F,UAAU;AAEzB,4FAA4F;AAC5F,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IAC1D,sEAAsE;IACtE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,kGAAkG;IAClG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChD;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,eAAe,CAQjF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,GAAE,iBAAsC,EAAE,OAAO,GAAE,iBAAsB,GAAG,IAAI,CAE9H"}
package/dist/module.js CHANGED
@@ -72,8 +72,11 @@ const HttpJsonOutputSchema = z.object({
72
72
  });
73
73
  const streamFields = {
74
74
  url,
75
+ method: z.enum(["GET", "POST"]).optional().describe("GET or POST (default: POST with body or json, GET without them)"),
75
76
  headers,
76
77
  query,
78
+ body: z.string().optional().describe("A body of text for a POST"),
79
+ json: z.unknown().optional().describe("A body of JSON for a POST: the procedure sets content-type: application/json"),
77
80
  timeoutMs: milliseconds("The time of the whole stream, in milliseconds (default: no limit)"),
78
81
  idleTimeoutMs: milliseconds("The longest time without data, in milliseconds (default: no limit)"),
79
82
  };
@@ -96,10 +99,11 @@ const HttpSseOutputSchema = z.object({
96
99
  // =============================================================================
97
100
  // Procedures
98
101
  // =============================================================================
99
- /** The effects of a request with any method: it reads from the network and can change remote data. */
102
+ /**
103
+ * The effects of each procedure of this package: it reads from the network, and a POST, a PUT or
104
+ * a DELETE can change remote data. The two streams also send a POST, so they declare the write too.
105
+ */
100
106
  const NETWORK_WRITE = { reads: ["network"], writes: ["network"] };
101
- /** The effects of a GET: it reads from the network and changes nothing. */
102
- const NETWORK_READ = { reads: ["network"], writes: [] };
103
107
  /** The four procedures, with handlers that use the settings. */
104
108
  function httpProcedures(settings) {
105
109
  const httpRequestProcedure = createProcedure()
@@ -135,15 +139,15 @@ function httpProcedures(settings) {
135
139
  .input(zodAdapter(HttpNdjsonInputSchema))
136
140
  .output(zodAdapter(HttpNdjsonOutputSchema))
137
141
  .meta({
138
- description: "Read an NDJSON response as a stream of parsed lines",
142
+ description: "Read an NDJSON response to a GET or a POST as a stream of parsed lines",
139
143
  args: ["url"],
140
- shorts: { timeoutMs: "t" },
144
+ shorts: { method: "X", timeoutMs: "t" },
141
145
  output: "json",
142
146
  streaming: true,
143
147
  // A server can send lines without an end (a watch, a feed): roadmap R15
144
148
  stream: { unbounded: true },
145
- // Only a GET
146
- effects: NETWORK_READ,
149
+ // A POST can change remote data
150
+ effects: NETWORK_WRITE,
147
151
  })
148
152
  // The promise gives the stream after the status: invokeProcedure reads a returned async
149
153
  // iterable as a stream, and the handler types of the core do not describe that case
@@ -154,15 +158,15 @@ function httpProcedures(settings) {
154
158
  .input(zodAdapter(HttpSseInputSchema))
155
159
  .output(zodAdapter(HttpSseOutputSchema))
156
160
  .meta({
157
- description: "Read a stream of server-sent events",
161
+ description: "Read the server-sent events of a GET or a POST as a stream",
158
162
  args: ["url"],
159
- shorts: { timeoutMs: "t" },
163
+ shorts: { method: "X", timeoutMs: "t" },
160
164
  output: "json",
161
165
  streaming: true,
162
166
  // An event stream can run without an end: roadmap R15
163
167
  stream: { unbounded: true },
164
- // Only a GET
165
- effects: NETWORK_READ,
168
+ // A POST can change remote data: an LLM API streams the answer of a POST
169
+ effects: NETWORK_WRITE,
166
170
  })
167
171
  .handler(((input, ctx) => httpSse(input, ctx, settings)))
168
172
  .build();
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * http.ndjson procedure
3
3
  *
4
- * Read an NDJSON response as a stream of parsed lines. The procedure sends a GET. Each line that
5
- * is not blank is one item: its JSON value. The stream can run without an end, so the procedure
6
- * declares an unbounded stream (roadmap R15). When the reader stops, the connection closes.
4
+ * Read an NDJSON response as a stream of parsed lines. The procedure sends a GET, or a POST with a
5
+ * body of JSON or text. Each line that is not blank is one item: its JSON value. The stream can
6
+ * run without an end, so the procedure declares an unbounded stream (roadmap R15). When the reader
7
+ * stops, the connection closes.
7
8
  *
8
9
  * The call waits for the status of the response. A refused host, a failed connection and a status
9
10
  * outside 200 to 299 fail the call itself, before the first item.
@@ -1 +1 @@
1
- {"version":3,"file":"ndjson.d.ts","sourceRoot":"","sources":["../../../src/procedures/http/ndjson.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAgH,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpK,OAAO,EAAa,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AA6BxE;;GAEG;AACH,wBAAsB,UAAU,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,GAAE,YAAiB,EAAE,QAAQ,GAAE,YAA+B,GAAG,OAAO,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAgBtL"}
1
+ {"version":3,"file":"ndjson.d.ts","sourceRoot":"","sources":["../../../src/procedures/http/ndjson.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAsH,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1K,OAAO,EAAa,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AA6BxE;;GAEG;AACH,wBAAsB,UAAU,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,GAAE,YAAiB,EAAE,QAAQ,GAAE,YAA+B,GAAG,OAAO,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAgBtL"}
@@ -1,15 +1,16 @@
1
1
  /**
2
2
  * http.ndjson procedure
3
3
  *
4
- * Read an NDJSON response as a stream of parsed lines. The procedure sends a GET. Each line that
5
- * is not blank is one item: its JSON value. The stream can run without an end, so the procedure
6
- * declares an unbounded stream (roadmap R15). When the reader stops, the connection closes.
4
+ * Read an NDJSON response as a stream of parsed lines. The procedure sends a GET, or a POST with a
5
+ * body of JSON or text. Each line that is not blank is one item: its JSON value. The stream can
6
+ * run without an end, so the procedure declares an unbounded stream (roadmap R15). When the reader
7
+ * stops, the connection closes.
7
8
  *
8
9
  * The call waits for the status of the response. A refused host, a failed connection and a status
9
10
  * outside 200 to 299 fail the call itself, before the first item.
10
11
  */
11
12
  import { HttpError } from "../../errors.js";
12
- import { DEFAULT_ITEM_BYTES, DEFAULT_SETTINGS, excerpt, exchange, isOk, prepare, statusError, touching } from "../../exchange.js";
13
+ import { DEFAULT_ITEM_BYTES, DEFAULT_SETTINGS, excerpt, exchange, isOk, prepareStream, statusError, touching } from "../../exchange.js";
13
14
  import { ndjsonLines } from "../../parsers.js";
14
15
  import { CallScope } from "../../scope.js";
15
16
  const PATH = ["http", "ndjson"];
@@ -45,7 +46,7 @@ async function* items(opened, scope, maxLineBytes) {
45
46
  */
46
47
  export async function httpNdjson(input, ctx = {}, settings = DEFAULT_SETTINGS) {
47
48
  const headers = { accept: "application/x-ndjson, application/jsonl;q=0.9, application/json;q=0.8" };
48
- const prepared = prepare({ ...input, method: "GET" }, PATH, settings, { headers });
49
+ const prepared = prepareStream(input, PATH, settings, headers);
49
50
  const scope = new CallScope(PATH, ctx, { timeoutMs: input.timeoutMs, idleTimeoutMs: input.idleTimeoutMs });
50
51
  let opened;
51
52
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"ndjson.js","sourceRoot":"","sources":["../../../src/procedures/http/ndjson.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ndjson.js","sourceRoot":"","sources":["../../../src/procedures/http/ndjson.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  /**
2
2
  * http.sse procedure
3
3
  *
4
- * Read a stream of server-sent events. The procedure sends a GET with
5
- * `accept: text/event-stream`, and each event is one item: its type, its data and the last event
6
- * ID. The procedure does not connect again after the end of the stream. To continue, a caller
7
- * sends the last ID in `lastEventId`. The stream can run without an end (roadmap R15).
4
+ * Read a stream of server-sent events. The procedure sends a GET, or a POST with a body of JSON or
5
+ * text, with `accept: text/event-stream`. An LLM API sends its answer to a POST as such a stream.
6
+ * Each event is one item: its type, its data and the last event ID. The procedure does not
7
+ * connect again after the end of the stream. To continue, a caller sends the last ID in
8
+ * `lastEventId`. The stream can run without an end (roadmap R15).
8
9
  *
9
10
  * The call waits for the status of the response. A refused host, a failed connection, a status
10
11
  * outside 200 to 299 and another content type fail the call itself, before the first item.
@@ -1 +1 @@
1
- {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../../src/procedures/http/sse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAmH,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEvK,OAAO,EAAa,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAuBlE;;GAEG;AACH,wBAAsB,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,GAAE,YAAiB,EAAE,QAAQ,GAAE,YAA+B,GAAG,OAAO,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAsB7K"}
1
+ {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../../src/procedures/http/sse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAyH,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE7K,OAAO,EAAa,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAuBlE;;GAEG;AACH,wBAAsB,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,GAAE,YAAiB,EAAE,QAAQ,GAAE,YAA+B,GAAG,OAAO,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAsB7K"}
@@ -1,16 +1,17 @@
1
1
  /**
2
2
  * http.sse procedure
3
3
  *
4
- * Read a stream of server-sent events. The procedure sends a GET with
5
- * `accept: text/event-stream`, and each event is one item: its type, its data and the last event
6
- * ID. The procedure does not connect again after the end of the stream. To continue, a caller
7
- * sends the last ID in `lastEventId`. The stream can run without an end (roadmap R15).
4
+ * Read a stream of server-sent events. The procedure sends a GET, or a POST with a body of JSON or
5
+ * text, with `accept: text/event-stream`. An LLM API sends its answer to a POST as such a stream.
6
+ * Each event is one item: its type, its data and the last event ID. The procedure does not
7
+ * connect again after the end of the stream. To continue, a caller sends the last ID in
8
+ * `lastEventId`. The stream can run without an end (roadmap R15).
8
9
  *
9
10
  * The call waits for the status of the response. A refused host, a failed connection, a status
10
11
  * outside 200 to 299 and another content type fail the call itself, before the first item.
11
12
  */
12
13
  import { HttpError } from "../../errors.js";
13
- import { DEFAULT_ITEM_BYTES, DEFAULT_SETTINGS, exchange, headerText, isOk, prepare, statusError, touching } from "../../exchange.js";
14
+ import { DEFAULT_ITEM_BYTES, DEFAULT_SETTINGS, exchange, headerText, isOk, prepareStream, statusError, touching } from "../../exchange.js";
14
15
  import { sseEvents } from "../../parsers.js";
15
16
  import { CallScope } from "../../scope.js";
16
17
  const PATH = ["http", "sse"];
@@ -41,7 +42,7 @@ export async function httpSse(input, ctx = {}, settings = DEFAULT_SETTINGS) {
41
42
  const headers = { accept: "text/event-stream", "cache-control": "no-cache" };
42
43
  if (input.lastEventId !== undefined)
43
44
  headers["last-event-id"] = input.lastEventId;
44
- const prepared = prepare({ ...input, method: "GET" }, PATH, settings, { headers });
45
+ const prepared = prepareStream(input, PATH, settings, headers);
45
46
  const scope = new CallScope(PATH, ctx, { timeoutMs: input.timeoutMs, idleTimeoutMs: input.idleTimeoutMs });
46
47
  let opened;
47
48
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"sse.js","sourceRoot":"","sources":["../../../src/procedures/http/sse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sse.js","sourceRoot":"","sources":["../../../src/procedures/http/sse.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -75,6 +75,12 @@ export interface HttpJsonOutput {
75
75
  data: unknown;
76
76
  }
77
77
  export interface HttpStreamInput extends HttpTarget {
78
+ /** GET, or POST. The default is POST with `body` or `json`, and GET without them. */
79
+ method?: "GET" | "POST" | undefined;
80
+ /** A body of text for a POST. */
81
+ body?: string | undefined;
82
+ /** A body of JSON for a POST: the procedure sets `content-type: application/json`. */
83
+ json?: unknown;
78
84
  /** The time of the whole stream, in milliseconds. The default is no limit. */
79
85
  timeoutMs?: number | undefined;
80
86
  /** The longest time without data, in milliseconds. The default is no limit. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package",
3
3
  "name": "@procedures/http",
4
- "version": "0.2.3",
4
+ "version": "0.4.0",
5
5
  "description": "HTTP as procedures: request, JSON, NDJSON and server-sent events, with a host allowlist that refuses private addresses, size limits and the deadline of the call.",
6
6
  "keywords": [
7
7
  "procedures",
@@ -69,7 +69,7 @@
69
69
  "procedures": "./dist/register.js"
70
70
  },
71
71
  "dependencies": {
72
- "@procedures/client": "0.2.3",
72
+ "@procedures/client": "0.4.0",
73
73
  "zod": "^4.6.5"
74
74
  },
75
75
  "scripts": {
package/src/exchange.ts CHANGED
@@ -146,6 +146,34 @@ export function prepare(parts: RequestParts, path: ProcedurePath, settings: Http
146
146
  };
147
147
  }
148
148
 
149
+ /** The parts of a stream request (`http.ndjson`, `http.sse`): GET, or POST with a body. */
150
+ export interface StreamRequestParts extends RequestParts {
151
+ readonly method?: "GET" | "POST" | undefined;
152
+ /** A body of text. */
153
+ readonly body?: string | undefined;
154
+ /** A body of JSON. */
155
+ readonly json?: unknown;
156
+ }
157
+
158
+ /**
159
+ * This function makes the request of a stream procedure. The method is POST with a body, and GET
160
+ * without one. A body of JSON gets `content-type: application/json`, and a body of text gets
161
+ * `text/plain`. A header of the input replaces these headers. Two bodies, or a GET with a body,
162
+ * throw.
163
+ */
164
+ export function prepareStream(parts: StreamRequestParts, path: ProcedurePath, settings: HttpSettings, headers: Record<string, string>): PreparedRequest {
165
+ const name = path.join(".");
166
+ if (parts.body !== undefined && parts.json !== undefined) throw new Error(`${name}: give only one of body and json`);
167
+ const body =
168
+ parts.json !== undefined ? { bytes: Buffer.from(JSON.stringify(parts.json), "utf8"), type: "application/json" }
169
+ : parts.body !== undefined ? { bytes: Buffer.from(parts.body, "utf8"), type: "text/plain; charset=utf-8" }
170
+ : undefined;
171
+ const method = parts.method ?? (body !== undefined ? "POST" : "GET");
172
+ if (method === "GET" && body !== undefined) throw new Error(`${name}: a GET request has no body: use the method POST`);
173
+ const extra = body === undefined ? headers : { ...headers, "content-type": body.type };
174
+ return prepare({ ...parts, method }, path, settings, { headers: extra, body: body?.bytes });
175
+ }
176
+
149
177
  /** A `lookup` for the socket that gives only the addresses that the check allowed. */
150
178
  function pinnedLookup(target: AllowedTarget): LookupFunction {
151
179
  return (_hostname, options, callback) => {
package/src/module.ts CHANGED
@@ -102,8 +102,11 @@ const HttpJsonOutputSchema = z.object({
102
102
 
103
103
  const streamFields = {
104
104
  url,
105
+ method: z.enum(["GET", "POST"]).optional().describe("GET or POST (default: POST with body or json, GET without them)"),
105
106
  headers,
106
107
  query,
108
+ body: z.string().optional().describe("A body of text for a POST"),
109
+ json: z.unknown().optional().describe("A body of JSON for a POST: the procedure sets content-type: application/json"),
107
110
  timeoutMs: milliseconds("The time of the whole stream, in milliseconds (default: no limit)"),
108
111
  idleTimeoutMs: milliseconds("The longest time without data, in milliseconds (default: no limit)"),
109
112
  };
@@ -132,12 +135,12 @@ const HttpSseOutputSchema = z.object({
132
135
  // Procedures
133
136
  // =============================================================================
134
137
 
135
- /** The effects of a request with any method: it reads from the network and can change remote data. */
138
+ /**
139
+ * The effects of each procedure of this package: it reads from the network, and a POST, a PUT or
140
+ * a DELETE can change remote data. The two streams also send a POST, so they declare the write too.
141
+ */
136
142
  const NETWORK_WRITE: Effects = { reads: ["network"], writes: ["network"] };
137
143
 
138
- /** The effects of a GET: it reads from the network and changes nothing. */
139
- const NETWORK_READ: Effects = { reads: ["network"], writes: [] };
140
-
141
144
  /** The four procedures, with handlers that use the settings. */
142
145
  function httpProcedures(settings: HttpSettings): AnyProcedure[] {
143
146
  const httpRequestProcedure = createProcedure()
@@ -175,15 +178,15 @@ function httpProcedures(settings: HttpSettings): AnyProcedure[] {
175
178
  .input(zodAdapter<HttpNdjsonInput>(HttpNdjsonInputSchema))
176
179
  .output(zodAdapter<HttpNdjsonOutput>(HttpNdjsonOutputSchema))
177
180
  .meta({
178
- description: "Read an NDJSON response as a stream of parsed lines",
181
+ description: "Read an NDJSON response to a GET or a POST as a stream of parsed lines",
179
182
  args: ["url"],
180
- shorts: { timeoutMs: "t" },
183
+ shorts: { method: "X", timeoutMs: "t" },
181
184
  output: "json",
182
185
  streaming: true,
183
186
  // A server can send lines without an end (a watch, a feed): roadmap R15
184
187
  stream: { unbounded: true },
185
- // Only a GET
186
- effects: NETWORK_READ,
188
+ // A POST can change remote data
189
+ effects: NETWORK_WRITE,
187
190
  })
188
191
  // The promise gives the stream after the status: invokeProcedure reads a returned async
189
192
  // iterable as a stream, and the handler types of the core do not describe that case
@@ -195,15 +198,15 @@ function httpProcedures(settings: HttpSettings): AnyProcedure[] {
195
198
  .input(zodAdapter<HttpSseInput>(HttpSseInputSchema))
196
199
  .output(zodAdapter<HttpSseOutput>(HttpSseOutputSchema))
197
200
  .meta({
198
- description: "Read a stream of server-sent events",
201
+ description: "Read the server-sent events of a GET or a POST as a stream",
199
202
  args: ["url"],
200
- shorts: { timeoutMs: "t" },
203
+ shorts: { method: "X", timeoutMs: "t" },
201
204
  output: "json",
202
205
  streaming: true,
203
206
  // An event stream can run without an end: roadmap R15
204
207
  stream: { unbounded: true },
205
- // Only a GET
206
- effects: NETWORK_READ,
208
+ // A POST can change remote data: an LLM API streams the answer of a POST
209
+ effects: NETWORK_WRITE,
207
210
  })
208
211
  .handler(((input: HttpSseInput, ctx: ScopeContext) => httpSse(input, ctx, settings)) as unknown as ProcedureHandler<HttpSseInput, HttpSseOutput>)
209
212
  .build();
@@ -1,16 +1,17 @@
1
1
  /**
2
2
  * http.ndjson procedure
3
3
  *
4
- * Read an NDJSON response as a stream of parsed lines. The procedure sends a GET. Each line that
5
- * is not blank is one item: its JSON value. The stream can run without an end, so the procedure
6
- * declares an unbounded stream (roadmap R15). When the reader stops, the connection closes.
4
+ * Read an NDJSON response as a stream of parsed lines. The procedure sends a GET, or a POST with a
5
+ * body of JSON or text. Each line that is not blank is one item: its JSON value. The stream can
6
+ * run without an end, so the procedure declares an unbounded stream (roadmap R15). When the reader
7
+ * stops, the connection closes.
7
8
  *
8
9
  * The call waits for the status of the response. A refused host, a failed connection and a status
9
10
  * outside 200 to 299 fail the call itself, before the first item.
10
11
  */
11
12
 
12
13
  import { HttpError } from "../../errors.js";
13
- import { DEFAULT_ITEM_BYTES, DEFAULT_SETTINGS, excerpt, exchange, isOk, prepare, statusError, touching, type Exchange, type HttpSettings } from "../../exchange.js";
14
+ import { DEFAULT_ITEM_BYTES, DEFAULT_SETTINGS, excerpt, exchange, isOk, prepareStream, statusError, touching, type Exchange, type HttpSettings } from "../../exchange.js";
14
15
  import { ndjsonLines } from "../../parsers.js";
15
16
  import { CallScope, type ScopeContext } from "../../scope.js";
16
17
  import type { HttpNdjsonInput, HttpNdjsonOutput } from "../../types.js";
@@ -47,7 +48,7 @@ async function* items(opened: Exchange, scope: CallScope, maxLineBytes: number):
47
48
  */
48
49
  export async function httpNdjson(input: HttpNdjsonInput, ctx: ScopeContext = {}, settings: HttpSettings = DEFAULT_SETTINGS): Promise<AsyncGenerator<HttpNdjsonOutput, void, undefined>> {
49
50
  const headers = { accept: "application/x-ndjson, application/jsonl;q=0.9, application/json;q=0.8" };
50
- const prepared = prepare({ ...input, method: "GET" }, PATH, settings, { headers });
51
+ const prepared = prepareStream(input, PATH, settings, headers);
51
52
  const scope = new CallScope(PATH, ctx, { timeoutMs: input.timeoutMs, idleTimeoutMs: input.idleTimeoutMs });
52
53
  let opened: Exchange | undefined;
53
54
  try {