私はデノに熱中しているので、やってみます。 REST API here の構築に関するチュートリアルを見つけました。
したがって、実行しようとすると、次のInvalidDataエラーが発生します。
error: Uncaught InvalidData: data did not match any variant of untagged enum ArgsEnum
at unwrapResponse ($deno$/ops/dispatch_json.ts:43:11)
at Object.sendAsync ($deno$/ops/dispatch_json.ts:98:10)
at async Object.connect ($deno$/net.ts:216:11)
at async Connection.startup (https://deno.land/x/postgres/connection.ts:138:17)
at async Client.connect (https://deno.land/x/postgres/client.ts:14:5)
at async Database.connect (file:///Users/svenhaaf/git/deno/logrocket_deno_api/db/database.js:17:5)
さて、データベースに接続しようとしたときに何かがおかしいように見えますが、何が原因なのか本当にわかりません。
このInvalidDataエラーはどういう意味ですか?どうすれば修正できますか?
FYI my deno --version prints:
deno 0.42.0
v8 8.2.308
TypeScript 3.8.3
コード: https://github.com/diogosouza/logrocket_deno_api からレポのクローンを作成し、config.js
で、1行目をconst env = Deno.env()
からconst env = Deno.env
に編集しました。 .envはメソッドではなくオブジェクトになりました。
チュートリアルはバージョン付きURLを使用しておらず、deno-postgres
はmaster
からプルしているため、使用されているv0.42.0
バージョンはhttps://deno.land/x/postgres/mod.ts
と互換性がありません。
db/database.js
がDeno https://deno.land/x/[email protected]/mod.ts
の正しいバージョンであるため、v0.3.11
をv0.42.0
からインポートするように変更します。
import { Client } from "https://deno.land/x/[email protected]/mod.ts";
新しいDenoまたはパッケージのバージョンがリリースされたときにコードの動作を停止したくない場合は、常にURLのバージョンを使用することを忘れないでください。