لقد قمت بإنشاء مشروع باستخدام Mern Stack، و في البداية قمت بإنشاء ملف Index.js وملف auth.js في مجلد الباك إند (مجلد الفرونت إند ليس موجودا حتى الان)، وقمت بإنشاء دالة لعملية تسجيل مستخدم جديد، ولكن عندما أحاول تسجيل مستخدم جديد باستخدام بوستمان، يظهر هذا الخطأ ولا تتم عملية التسجيل
SyntaxError: Unexpected token } in JSON at position 121
at JSON.parse (<anonymous>)
at parse (C:\Users\ه\Desktop\social_media\server\node_modules\express\node_modules\body-parser\lib\types\json.js:89:19)
at C:\Users\ه\Desktop\social_media\server\node_modules\express\node_modules\body-parser\lib\read.js:128:18
at AsyncResource.runInAsyncScope (node:async_hooks:203:9)
at invokeCallback (C:\Users\ه\Desktop\social_media\server\node_modules\express\node_modules\raw-body\index.js:231:16)
at done (C:\Users\ه\Desktop\social_media\server\node_modules\express\node_modules\raw-body\index.js:220:7)
at IncomingMessage.onEnd (C:\Users\ه\Desktop\social_media\server\node_modules\express\node_modules\raw-body\index.js:280:7)
at IncomingMessage.emit (node:events:513:28)
at endReadableNT (node:internal/streams/readable:1359:12)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
index.js code :
import express from "express";import bodyParser from "body-parser";import mongoose from "mongoose";import cors from "cors";import dotenv from "dotenv";import multer from "multer";import helmet from "helmet";import morgan from "morgan";import path from "path";import{ fileURLToPath } from "url";import{register} from "./controllers/auth.js";// ** CONFIGURATION ** //const __filename = fileURLToPath(import.meta.url);const __dirname = path.dirname(__filename);
dotenv.config();const app = express();
app.use(express.json());
app.use(helmet());
app.use(helmet.crossOriginResourcePolicy({ policy:"cross-origin"}))
app.use(morgan("common"));
app.use(bodyParser.json({ limit:"30mb", extended:true}));
app.use(bodyParser.urlencoded({ limit:"30mb", extended:true}));
app.use(cors());
app.use("/assets", express.static(path.join(__dirname,'public/assets')));/* FILE STORAGE */const storage = multer.diskStorage({
destination:function(req, file, cb){
cb(null,"public/assets");},
filename:function(req, file, cb){
cb(null, file.originalname);}});const upload = multer({ storage });/* ROUTES WITH FILES */
app.post("/auth/register", upload.single("picture"),register);/* MONGOOSE SETUP */const PORT = process.env.PORT ||6001;
mongoose.connect(process.env.MONGO_URL,{
useNewUrlParser:true,
useUnifiedTopology:true,}).then(()=>{
app.listen(PORT,()=> console.log(`ServerPort ${PORT}...`));}).catch((error)=> console.log(`did not connect cause this error: ${error}`));
auth.js code :
import bcrypt from "bcrypt";importJwt from "jsonwebtoken";importUser from "../models/User.js";/* REGISTER USER */exportconstregister=async(req, res)=>{try{const{
name,
username,
email,
password,
picturePath,
friends,
location,
occupation
}= req.body;const salt =await bcrypt.genSalt();const passwordHash =await bcrypt.hash(password, salt);const newUser =newUser({
name,
username,
email,
password: passwordHash,
picturePath,
friends,
location,
occupation,
viewedProfile:Math.floor(Math.random()*10_000),
impressions:Math.floor(Math.random()*10_000),});const savedUser =await newUser.save();
res.status(201).json(savedUser);}catch(err){
res.status(500).json({ error: err.message });}}
وهذا تعليق أحد المبرمجين على مشكلتي في موقع stackoverflow :
"Unexpected token } in JSON at position 121" — So look at the JSON! (And use a linter on it to make it easier to identify the error)
واستخدمت ESLint ولم يساعدني لمعرفة أين المشكلة
تم التعديل في بواسطة Mustafa Suleiman تعديل عنوان السؤال
السؤال
محمد الحربي36
لقد قمت بإنشاء مشروع باستخدام Mern Stack، و في البداية قمت بإنشاء ملف Index.js وملف auth.js في مجلد الباك إند (مجلد الفرونت إند ليس موجودا حتى الان)، وقمت بإنشاء دالة لعملية تسجيل مستخدم جديد، ولكن عندما أحاول تسجيل مستخدم جديد باستخدام بوستمان، يظهر هذا الخطأ ولا تتم عملية التسجيل
index.js code :
auth.js code :
وهذا تعليق أحد المبرمجين على مشكلتي في موقع stackoverflow :
"Unexpected token } in JSON at position 121" — So look at the JSON! (And use a linter on it to make it easier to identify the error)
واستخدمت ESLint ولم يساعدني لمعرفة أين المشكلة
تم التعديل في بواسطة Mustafa Suleimanتعديل عنوان السؤال
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.