nushell/crates
Anas Alkhatib b072d75300
http post --content-type should set Content-Type header (#9431)
Parse the data from string to json if the `--content-type
"application/json"` flag is used for the request.

Fixes: https://github.com/nushell/nushell/issues/9408

In the issue, the actual data is a string `'{ "query": "{ greeting }"
}'` representing json, and it would match the case `Value::String { val,
.. }`


-------------------------

The example in the issue does set the `content-type` to
`application/json` but sends the body as a string note the `'`.

```
(
::: http post
:::   -fer
:::   # -H [ "Content-Type" "application/json" ]
:::   --content-type "application/json"
:::   'http://127.0.0.1:3000/greetings/hello'
:::   '{ "query": "{ greeting }" }'
::: )
```

```
╭─────────┬───────────────────────╮
│ headers │ {record 14 fields}    │
│ body    │ {"content_type":null} │
│ status  │ 200                   │
╰─────────┴───────────────────────╯
```

If we send the same request but using actual json as the body, the
Header is set correctly.

```
(        
::: http post
:::   -fer
:::   # -H [ "Content-Type" "application/json" ]
:::   --content-type "application/json"
:::   'http://127.0.0.1:3000/greetings/hello'
:::   { "query": "{ greeting }" }
::: )
```
```

╭─────────┬─────────────────────────────────────╮
│ headers │ {record 14 fields}                  │
│ body    │ {"content_type":"application/json"} │
│ status  │ 200                                 │
╰─────────┴─────────────────────────────────────╯
```
2023-06-15 06:51:35 -05:00
..
nu_plugin_custom_values Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu_plugin_example Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu_plugin_formats update ini dependency (#9426) 2023-06-13 13:33:00 -05:00
nu_plugin_gstat Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu_plugin_inc Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu_plugin_python update nu_plugin_python due to signature changes (#8107) 2023-02-18 13:27:24 +00:00
nu_plugin_query Changes HashMap to use aHash instead, giving a performance boost. (#9391) 2023-06-10 11:41:58 -05:00
nu-cli Break up interdependencies of command crates (#9429) 2023-06-14 23:12:55 +02:00
nu-cmd-dataframe Break up interdependencies of command crates (#9429) 2023-06-14 23:12:55 +02:00
nu-cmd-extra Break up interdependencies of command crates (#9429) 2023-06-14 23:12:55 +02:00
nu-cmd-lang Drop unused nu-color-config in nu-cmd-lang (#9444) 2023-06-15 13:12:01 +02:00
nu-color-config Changes HashMap to use aHash instead, giving a performance boost. (#9391) 2023-06-10 11:41:58 -05:00
nu-command http post --content-type should set Content-Type header (#9431) 2023-06-15 06:51:35 -05:00
nu-engine allow paths to have brackets (#9416) 2023-06-13 07:30:10 -05:00
nu-explore Move explore command out of nu-command deps (#9421) 2023-06-14 01:18:36 +02:00
nu-glob Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-json Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-parser allow comment in multiple line pipeline (#9436) 2023-06-15 13:11:42 +02:00
nu-path Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-plugin Changes HashMap to use aHash instead, giving a performance boost. (#9391) 2023-06-10 11:41:58 -05:00
nu-pretty-hex Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-protocol Remove ZB and ZiB from file size type (#9427) 2023-06-14 10:53:32 -05:00
nu-std std: refactor test-runner to no longer require tests to be exported (#9355) 2023-06-10 20:16:17 +02:00
nu-system Changes HashMap to use aHash instead, giving a performance boost. (#9391) 2023-06-10 11:41:58 -05:00
nu-table nu-table: Bump tabled to 0.12.1 (#9341) 2023-06-11 17:33:54 -05:00
nu-term-grid Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-test-support Bump to 0.81.1 as development version (#9379) 2023-06-07 15:06:42 +02:00
nu-utils Remove ZB and ZiB from file size type (#9427) 2023-06-14 10:53:32 -05:00
README.md Remove old nushell/merge engine-q 2022-02-07 14:54:06 -05:00

Nushell core libraries and plugins

These sub-crates form both the foundation for Nu and a set of plugins which extend Nu with additional functionality.

Foundational libraries are split into two kinds of crates:

  • Core crates - those crates that work together to build the Nushell language engine
  • Support crates - a set of crates that support the engine with additional features like JSON support, ANSI support, and more.

Plugins are likewise also split into two types:

  • Core plugins - plugins that provide part of the default experience of Nu, including access to the system properties, processes, and web-connectivity features.
  • Extra plugins - these plugins run a wide range of different capabilities like working with different file types, charting, viewing binary data, and more.