deno run -A apiserver.ts
サーバを起動した状態で、client_deno
フォルダ内のclient_test1.ts
,client_test2.ts
をそれぞれ実行
deno run -A ../client_deno/client_test1.ts
http://localhost:8880/game
にアクセス。
「囲みマス」のロゴが表示されたらOK
この状態でサンプルコードを動かすと、各ゲームの状態が分かります。
それぞれのゲームIDをクリックすると、ゲーム詳細(フィールドの様子)も見られます。
ゲーム詳細に直接アクセスするにはhttp://localhost:8880/game/:(ルームID)
また、ユーザ詳細に直接アクセスするにはhttp://localhost:8880/user/:(ユーザID or ユーザネーム)
下記サイトを参考
かこみますネットワークプロトコルを決めようの会
https://hackmd.io/IDgCfeQ8SqWQuK9PzkG8xQ
- apiにアクセスするURLの変更
- /users/regist => /api/users/regist
- /users/show/:userId => /api/users/show/:userId
- /users/delete => /api/users/delete
- /match => /api/match
- /match/:roomId => /api/match/:roomId
- /match/:roomId/action => /api/match/:roomId/action
- action API
- リクエストデータ形式の変更
- timeが無くなった
- agentid => agentId
- レスポンスデータ形式の変更
- actionのオウム返しを無しに。
- 代わりに
receptionUnixTime
とturn
を返すように。 - 詳しくはHackMDを見てね
- リクエストデータ形式の変更
- 事前にユーザ登録しないといけなくなった。
- それに伴い、match APIではユーザ名(またはユーザID)とパスワードが必要になった。
- match API
- レスポンスJson Key変更:uuid => accessToken
- レスポンスJson Key変更:name => userId
- レスポンスJson Key変更:roomId => gameId
- match/:gameId API
- レスポンスJson Key変更:roomID => gameId
- レスポンスJson Key変更:players[i].playerID => players[i].id
- 言葉の定義の変更:ルーム => ゲーム(コードによっては直っていない部分もあります。)