1
0
mirror of https://github.com/actix/examples synced 2024-11-28 08:22:39 +01:00
examples/graphql/juniper/README.md
Altug Sahin 8186a8cfea
fix broken links (#441)
Co-authored-by: Igor Aleksanov <popzxc@yandex.ru>
Co-authored-by: Altug Sahin <altugsahin@gmail.com>
Co-authored-by: Rob Ede <robjtede@icloud.com>
2021-10-06 22:28:53 +01:00

79 lines
1.1 KiB
Markdown

# Juniper
[Juniper](https://github.com/graphql-rust/juniper) integration for Actix web.
If you want more advanced example, see also the [juniper-advanced example].
[juniper-advanced example]: https://github.com/actix/examples/tree/master/graphql/juniper-advanced
## Usage
### server
```bash
cd graphql/juniper
cargo run (or ``cargo watch -x run``)
# Started http server: 127.0.0.1:8080
```
### web client
[http://127.0.0.1:8080/graphiql](http://127.0.0.1:8080/graphiql)
_Query example:_
```graphql
{
human(id: "1234") {
name
appearsIn
homePlanet
}
}
```
_Result:_
```json
{
"data": {
"human": {
"name": "Luke",
"appearsIn": [
"NEW_HOPE"
],
"homePlanet": "Mars"
}
}
}
```
_Mutation example:_
```graphql
mutation {
createHuman(newHuman: {name: "Fresh Kid Ice", appearsIn: EMPIRE, homePlanet: "earth"}) {
id
name
appearsIn
homePlanet
}
}
```
_Result:_
```json
{
"data": {
"createHuman": {
"id": "1234",
"name": "Fresh Kid Ice",
"appearsIn": [
"EMPIRE"
],
"homePlanet": "earth"
}
}
}
```