標準の apollo graphql-server-expressで HTTP fetch リクエストを作成するのに苦労しています
graphql.orgのガイダンスに従ってみましたが、役に立ちませんでした。
これをテストするために、Fusetools News Feed Exampleを使用し、標準の http を使用して apollo-server への呼び出しでフェッチ呼び出しを切り替えています。
```
fetch('https://localhost:8080/graphql', {
"method": 'POST',
"headers": { "Content-type": "application/graphql", "Accept": "application/json"},
"body": {"query": "{ places { id name address city }" }
})
.then(function(response) { return response.json; })
.then(function(responseObject) { data.value = responseObject; });
```
これは、返されたフィールドのみが変更された完全なコードです。
```
<DockPanel>
<JavaScript>
var Observable = require("FuseJS/Observable");
var data = Observable();
fetch('https://localhost:8080/graphql', {
"method": 'POST',
"headers": { "Content-type": "application/graphql", "Accept": "application/json"},
"body": {"query": "{ places { id name address city }" }
})
.then(function(response) { return response.json; })
.then(function(responseObject) { data.value = responseObject; });
module.exports = {
dataSource: data
};
</JavaScript>
<StatusBarBackground Dock="Top" />
<BottomFrameBackground Dock="Bottom" />
<StackPanel Dock="Top">
<Text FontSize="28" Alignment="VerticalCenter"
TextAlignment="Center" Padding="2"
Value="NEWS" />
<Rectangle Height="1" Margin="0,3,0,0" Fill="#333c48" />
</StackPanel>
<Text ux:Class="Header" Margin="10,10,10,5" TextWrapping="Wrap" FontSize="22" />
<Text ux:Class="Article" Margin="10,0,10,0" TextWrapping="Wrap" FontSize="13" />
<Text ux:Class="PublishedDate" Margin="10,0,10,0" FontSize="13" Color="#999" />
<ScrollView>
<StackPanel Alignment="Top">
<Panel Height="7" />
<Each Items="{dataSource.data.places}">
<Panel ux:Class="HorizontalBar" Margin="46,10,0,10"
Alignment="VerticalCenter">
<Rectangle Height="1" Fill="#dcdee3" />
</Panel>
<Header Value="{name}" />
<Article Value="{address}" />
<PublishedDate Value="{city}" />
<HorizontalBar />
</Each>
</StackPanel>
</ScrollView>
</DockPanel>
``` ガイダンスをいただければ幸いです。ありがとうございました。