mirror of
https://github.com/morten-olsen/http.md.git
synced 2026-02-08 00:46:28 +01:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a2f2f5627 |
7
.github/workflows/main.yaml
vendored
7
.github/workflows/main.yaml
vendored
@@ -92,7 +92,7 @@ jobs:
|
|||||||
|
|
||||||
release:
|
release:
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: read
|
||||||
packages: write
|
packages: write
|
||||||
attestations: write
|
attestations: write
|
||||||
id-token: write
|
id-token: write
|
||||||
@@ -135,8 +135,3 @@ jobs:
|
|||||||
pnpm publish --no-git-checks --access public
|
pnpm publish --no-git-checks --access public
|
||||||
env:
|
env:
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||||
|
|
||||||
- uses: stefanzweifel/git-auto-commit-action@v5
|
|
||||||
with:
|
|
||||||
commit_message: "docs: generated README"
|
|
||||||
file_pattern: "*.md"
|
|
||||||
|
|||||||
@@ -110,9 +110,9 @@ HTTP/200 OK
|
|||||||
access-control-allow-credentials: true
|
access-control-allow-credentials: true
|
||||||
access-control-allow-origin: *
|
access-control-allow-origin: *
|
||||||
connection: keep-alive
|
connection: keep-alive
|
||||||
content-length: 556
|
content-length: 559
|
||||||
content-type: application/json
|
content-type: application/json
|
||||||
date: Sun, 18 May 2025 18:55:55 GMT
|
date: Sun, 18 May 2025 18:31:46 GMT
|
||||||
server: gunicorn/19.9.0
|
server: gunicorn/19.9.0
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -129,12 +129,12 @@ server: gunicorn/19.9.0
|
|||||||
"Host": "httpbin.org",
|
"Host": "httpbin.org",
|
||||||
"Sec-Fetch-Mode": "cors",
|
"Sec-Fetch-Mode": "cors",
|
||||||
"User-Agent": "node",
|
"User-Agent": "node",
|
||||||
"X-Amzn-Trace-Id": "Root=1-682a2d3b-244883ec40275d5e642566d6"
|
"X-Amzn-Trace-Id": "Root=1-682a2792-7df702ce77a3b3696937eaeb"
|
||||||
},
|
},
|
||||||
"json": {
|
"json": {
|
||||||
"greeting": "Hello, http.md!"
|
"greeting": "Hello, http.md!"
|
||||||
},
|
},
|
||||||
"origin": "13.64.151.43",
|
"origin": "185.181.220.204",
|
||||||
"url": "https://httpbin.org/post"
|
"url": "https://httpbin.org/post"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -176,13 +176,6 @@ Within your markdown document, the following variables are available in the Hand
|
|||||||
|
|
||||||
::raw-md[./examples/with-template.md]
|
::raw-md[./examples/with-template.md]
|
||||||
|
|
||||||
<details>
|
|
||||||
<summary>Output</summary>
|
|
||||||
|
|
||||||
::raw-md[./examples/with-template.md]{render}
|
|
||||||
|
|
||||||
</details>
|
|
||||||
|
|
||||||
_(Note: `httpbin.org/post` wraps the JSON sent in a "json" field in its response. If your API returns the ID directly at the root of the JSON body, you'd use `{{responses.createItem.body.id}}` assuming the `createItem` request had the `json` option.)_
|
_(Note: `httpbin.org/post` wraps the JSON sent in a "json" field in its response. If your API returns the ID directly at the root of the JSON body, you'd use `{{responses.createItem.body.id}}` assuming the `createItem` request had the `json` option.)_
|
||||||
|
|
||||||
**2. Displaying a status code in markdown text:**
|
**2. Displaying a status code in markdown text:**
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
```http #createItem,json
|
```http id=createItem json
|
||||||
POST https://httpbin.org/post
|
POST https://httpbin.org/post
|
||||||
Content-Type: application/json
|
Content-Type: application/json
|
||||||
|
|
||||||
{"name": "My New Item"}
|
{"name": "My New Item"}
|
||||||
```
|
```
|
||||||
|
|
||||||
The new item ID is: {{response.body.json.name}}
|
The new item ID is: {{responses.createItem.body.json.name}}
|
||||||
|
|
||||||
Now, let's fetch the item using a (mocked) ID from the response:
|
Now, let's fetch the item using a (mocked) ID from the response:
|
||||||
|
|
||||||
|
|||||||
@@ -16,11 +16,6 @@ const httpHandler: ExecutionHandler = ({
|
|||||||
return [key.trim(), value?.trim() || true];
|
return [key.trim(), value?.trim() || true];
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
let id = options.id?.toString();
|
|
||||||
const idPart = optionParts.find((option) => option.startsWith('#'));
|
|
||||||
if (idPart) {
|
|
||||||
id = idPart.slice(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
addStep({
|
addStep({
|
||||||
type: 'http',
|
type: 'http',
|
||||||
@@ -33,8 +28,7 @@ const httpHandler: ExecutionHandler = ({
|
|||||||
const content = template(context);
|
const content = template(context);
|
||||||
const [head, body] = content.split('\n\n');
|
const [head, body] = content.split('\n\n');
|
||||||
const [top, ...headerItems] = head.split('\n');
|
const [top, ...headerItems] = head.split('\n');
|
||||||
const [method, ...urlParts] = top.split(' ');
|
const [method, url] = top.split(' ');
|
||||||
const url = urlParts.join(' ').trim();
|
|
||||||
|
|
||||||
const headers = Object.fromEntries(
|
const headers = Object.fromEntries(
|
||||||
headerItems.map((header) => {
|
headerItems.map((header) => {
|
||||||
@@ -72,7 +66,7 @@ const httpHandler: ExecutionHandler = ({
|
|||||||
node.meta = undefined;
|
node.meta = undefined;
|
||||||
|
|
||||||
context.addRequest({
|
context.addRequest({
|
||||||
id,
|
id: options.id?.toString(),
|
||||||
request: {
|
request: {
|
||||||
method,
|
method,
|
||||||
url,
|
url,
|
||||||
|
|||||||
Reference in New Issue
Block a user