2.8.Entityデータの読み出し |
---|
2022年4月10日 |
|
次は、格納したデータを読みだしてみましょう。以下のコマンドを打ってください。 |
|
curl -X GET 'http://localhost:1026/v2/entities/urn:ngsi-ld:Store:001' | |
そうすると、結果が以下の様に帰ってくるはずです。 |
|
PS C:\Users\owner> curl -X GET 'http://localhost:1026/v2/entities/urn:ngsi-ld:Store:001' [{"id":"urn:ngsi-ld:Store:001","type":"Store","address":{"type":"PostalAddress","value":{"streetAddress":"長沼町202-5","addressLocality":"八王子市","addressRegion":"東京都","postalCode":"1920907"},"metadata":{}},"location":{"type":"geo:json","value":{"type":"Point","coordinates":[139.371578,35.642221]},"metadata":{}},"name":{"type":"Text","value":"ローソン八王子長沼町店","metadata":{}}}] PS C:\Users\owner> |
|
見やすく整形したい場合はjson Pretty Linter などの整形ツールを使うと便利です。このサイトを使うと構文チェックと整形をしてくれます。今回は、以下の様に整形してくれました。 |
|
[ { "id": "urn:ngsi-ld:Store:001", "type": "Store", "address": { "type": "PostalAddress", "value": { "streetAddress": "長沼町202-5", "addressLocality": "八王子市", "addressRegion": "東京都", "postalCode": "1920907" }, "metadata": {} }, "location": { "type": "geo:json", "value": { "type": "Point", "coordinates": [ 139.371578, 35.642221 ] }, "metadata": {} }, "name": { "type": "Text", "value": "ローソン八王子長沼町店", "metadata": {} } } ] |
|
mertadataの記述が増えていますが、それ以外は登録したEntityが読み出されている事がわかります。尚、curlでは、イチイチファイルにEntityを書き込まなくても-dパラメータの後にシングルクォートで囲ってEntityを書けばいいことになっていますが、筆者の経験ではWindows環境ではうまく動かない事が多いです。これは、シングルクォートやダブルクォートの扱いがWindowsとLinuxで違う事が原因の様です。また、PowerShellではなく、コマンドプロンプトやWindows Terminalで動かす事例もありますが、筆者が試したところではうまく動きませんでした。Windows Terminalに至っては、バグだからサポートに連絡してくれという趣旨のエラーになりました。 ここまでで、Orionの環境が正常に動き、簡単な操作が動作することを確認しました。 本章の最後に後片付けについても触れておきます。Orionのコンテナの停止と削除は、 |
|
docker stop fiware-orion docker rm fiware-orion |
|
の二つを投入する事で可能です。 実は、runコマンドは、createとstartの二つのコマンドを一括して実行するコマンドだったので、停止するためには二つのコマンドが必要となります。 同様に、Mongo-dbの停止と削除はそれぞれ |
|
docker stop mongo-db docker rm mongo-db |
|
最後にネットワークの削除は以下となります。 | |
docker network rm fiware_default | |
この状態でimageはローカルに保存されていますので、再実行するときにはdocker pullは必要なく、runから始めれば大丈夫です。 更に、imageまで削除する場合は以下です。 |
|
docker rmi mongo:4.4 docker rmi fiware/orion |
|
ここではimageの名前指定でコマンドを実行しましたが、本来イメージIDを指定するものなので、見つからないというエラーになることがあるようです。その場合は名前ではなく、イメージIDを指定してやり直して下さい。イメージIDは、下記の"docker images"で確認できます。 尚、mongoのimageを削除すると、格納したEntityも消えてしまいますので、ご注意ください。 最後に、コンテナ、image、ネットワークが残っていないか確認しましょう。 |
|
docker container ps -a docker images docker network ls |
|
これで元に戻りました。 | |
|