2017-11-30 5 views
0

私のデータはフォームから/人のエンドポイントに投稿されます。エラーは未定義ですかエラー:デフォルトエンジンが指定されておらず、拡張機能もありません。console.logのフォームデータをサーバーに送信するときにエラーが発生します

ERROR

listening 
undefined 
Error: No default engine was specified and no extension was provided. 
at new View (/home/mohit/edx- 
proj/node_modules/express/lib/view.js:61:11) 
at EventEmitter.render (/home/mohit/edx- 
proj/node_modules/express/lib/application.js:570:12) 
at ServerResponse.render (/home/mohit/edx- 
proj/node_modules/express/lib/response.js:1008:7) 
at /home/mohit/edx-proj/server.js:42:9 
at Layer.handle [as handle_request] (/home/mohit/edx- 
proj/node_modules/express/lib/router/layer.js:95:5) 
at next (/home/mohit/edx- 
proj/node_modules/express/lib/router/route.js:137:13) 
at Route.dispatch (/home/mohit/edx- 
proj/node_modules/express/lib/router/route.js:112:3) 
at Layer.handle [as handle_request] (/home/mohit/edx- 
proj/node_modules/express/lib/router/layer.js:95:5) 
at /home/mohit/edx- 
proj/node_modules/express/lib/router/index.js:281:22 
at Function.process_params (/home/mohit/edx- 
proj/node_modules/express/lib/router/index.js:335:12) 

server.jsファイル

var express = require('express'); 
var sqlite3 = require('sqlite3'); 
var formidable = require('formidable'); 
var bodyParser = require('body-parser'); 
var urlencodedParser = bodyParser.urlencoded({ extended: false }) 
var app=express(); 
app.get(`/`,function(request,response){ 
      response.writeHead(200, {'Content-Type': 'text/html'}); 
     response.write("sfewqcfnvsjv") 
     response.write('<form action="/persons" method="post" >'); 
     response.write('<input type="number" name="filetoupload"><br>'); 
     response.write('<input type="text" name="filetoupload"><br>'); 
     response.write('<input type="text" name="filetoupload"><br>'); 
     response.write('<input type="submit">'); 
     response.write('</form>'); 
     response.end() 
}); 

app.post('/persons',urlencodedParser,function(req, res){ 
    console.log(req.body); 
    res.render('persons',{qs:req.query}); 
}); 

app.listen(8000,function(){ 
    console.log("listen:8000") 
}) 

私が行方不明です何を知っていると、事前にあなたに感謝してください。

+0

https://stackoverflow.com/questions/23595282/error-no-default-engine-was-specified-and-no-extension-was-provided – wrangler

+0

私はapp.set( 'view engine'、 'html '); しかしエラー 'html'モジュールを見つけることができません –

答えて

1

あなたはどちらかでそのビューエンジンのどの、

指定していない:

HTML

app.set('view engine', 'html'); 

、さらにはJSON形式で

res.json({ error: err }) 

にレンダリングするにはまたはejsでレンダリングする

app.set('view engine', 'ejs'); 

やヒスイにレンダリングする/パグ

app.set('view engine', 'jade'); 

app.set('view engine', 'pug'); 

注:あなたがあなたのファイルが何であるかのフォーマットに応じて、ヒスイまたはパグのいずれかを使用するようにしている、と使用しないapp.set('view engine', 'jade');app.set('view engine', 'pug');まとめて、jadepug

の詳細を読むことができます。

+0

エラーの前に 'redefined'オブジェクトに' req.body'が存在しないため、 'undefined'の直前にあります。あなたは無効なコンテンツタイプで 'POST'しているかもしれません。 – sshow

+0

ちょうどメモ:Jade = pug – YouneL

関連する問題