#node.js #typescript #graphql #prisma #prisma-graphql
#node.js #машинопись #graphql #prisma #prisma-graphql
Вопрос:
- Версия: v12.19.0
- Платформа: Linux ayungavis 5.4.0-48-generic # 52 ~ 18.04.1-Ubuntu SMP Чт 10 сентября 12:50:22 UTC 2020 x86_64 x86_64 x86_64 GNU / Linux
- Подсистема:
Какие шаги будут воспроизводить ошибку?
Я пытался следовать руководству по добавлению базы данных в GraphQL, это код моего script.ts
:
const { PrismaClient } = require("@prisma/client")
const prisma = new PrismaClient()
async function main() {
const allLinks = await prisma.link.findMany()
console.log(allLinks)
}
main()
.catch(e => {
throw e
})
.finally(async () => {
await prisma.disconnect()
})
Как часто он воспроизводится? Есть ли обязательное условие?
Каждый раз, когда я запускаю его с помощью node src/script.ts
или ts-node src/script.ts
.
Требования:
- @prisma / cli
- @prisma /клиент
Каково ожидаемое поведение?
Показать все ссылки из базы данных с помощью prisma client.
Что вы видите вместо этого?
Я попытался запустить script.ts
using node src/script.ts
и ts-node src/script.ts
, но показал следующую ошибку:
/usr/bin/node[20367]: ../src/node_http_parser_impl.h:529:static void node::{anonymous}::Parser::Initialize(const v8::FunctionCallbackInfo<v8::Value>amp;): Assertion `args[3]->IsInt32()' failed.
1: 0xa17c40 node::Abort() [/usr/bin/node]
2: 0xa17cbe [/usr/bin/node]
3: 0xa3214a [/usr/bin/node]
4: 0xc019e9 [/usr/bin/node]
5: 0xc037d7 v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [/usr/bin/node]
6: 0x1409319 [/usr/bin/node]
Дополнительная информация
Это мой package.json
файл:
{
"name": "learn",
"version": "1.0.0",
"description": "A GraphQL Server from scratch for learning purpose.",
"main": "index.ts",
"scripts": {
"start": "dotenv -- nodemon -e ts,graphql -x ts-node src/index.ts",
"test": "echo "Error: no test specified" amp;amp; exit 1"
},
"keywords": [],
"dependencies": {
"graphql-yoga": "^1.18.3"
},
"devDependencies": {
"@prisma/cli": "^2.8.1",
"@prisma/client": "^2.8.1",
"@types/node": "^14.11.2",
"dotenv-cli": "^4.0.0",
"nodemon": "^2.0.4",
"ts-node": "^9.0.0",
"typescript": "^4.0.3"
}
}
Комментарии:
1. Я также сталкиваюсь с этим, развертывая heroku. 2020-10-11T05:48:46.590156 00:00 приложение [web.1]: /app/.heroku/node/bin/node[133]: ../src/node_http_parser_impl.h:529:статический недействительный узел::{анонимный}:: Анализатор::Инициализировать (const v8::FunctionCallbackInfo<v8::Value>amp;): Ошибка утверждения `args [3]->IsInt32()’. Похоже, неплохо открыть их на github в качестве проблемы.
2. @Mark yap, я создал проблему в репозитории nodejs. На данный момент вам необходимо понизить версию вашего узла до
v12.18.4
или обновить ееv14
.
Ответ №1:
Похоже, что ваша проблема связана с этим. В настоящее время существует проблема с Node.js версия 12.19.0, которую использует Heroku, и есть зависимость с именем undici
, которая вызывает проблему. Это должно сработать, если вы попробуете это с узлом 14 в Heroku.
Комментарии:
1. Да, вы правы. Я создал проблему в репозитории nodejs, и ошибка отображается только в узле
v12.19.0
. На данный момент я понижаю версию своего узла доv12.18.4
, и она работает правильно. Спасибо за ответ.