Javascript 我得到了这个错误;错误代码:200消息:解析的过程中Http失败http://localhost:3000/login"

Javascript 我得到了这个错误;错误代码:200消息:解析的过程中Http失败http://localhost:3000/login",javascript,node.js,json,angular,typescript,Javascript,Node.js,Json,Angular,Typescript,这是我的Login.component.html将formdata传递给OnSubmit方法我想从angular前端应用程序发送formdata,如果用户名和密码与现有注册人员匹配,我想登录(在mysql中) ****这是我的登录表**** <div class="container"> <form [formGroup]="loginForm" class="form-horizontal" (ngSubmit)="onSubmit()"> <div cl

这是我的Login.component.html将formdata传递给OnSubmit方法我想从angular前端应用程序发送formdata,如果用户名和密码与现有注册人员匹配,我想登录(在mysql中)

****这是我的登录表****

<div class="container">
  <form [formGroup]="loginForm" class="form-horizontal" (ngSubmit)="onSubmit()">
  <div class="panel panel-primary pb-3">
    <div class="panel-heading">
      <h3 class="panel-title">Instrutors Login Form</h3>
    </div>
    <div class="pane-body">
      <div class="form-group ">
        <label class="col-sm-2 control-label" for="username">User Name:</label>
        <div class="col-md-8">
          <input type="text" id="username" formControlName="username" class="form-control" ng-model="mymdl">
        </div>
      </div>
      <div class="form-group">
          <label class="col-sm-2 control-label" for="password">Password:</label>
          <div class="col-md-8">
            <input type="password" id="password" formControlName="password" class="form-control">
          </div>
        </div>
      <div class="panel-footer">
        <button type="submit">login</button> <p> <a routerLink="/register">Signup</a></p>
      </div>
    </div>
  </div>
</form>
</div>
这是login.service.ts文件,它使用http方法调用服务

import { Injectable } from '@angular/core';
import {HttpClient,HttpHeaders} from '@angular/common/http';
import {Observable,throwError} from 'rxjs';
import {retry,catchError} from'rxjs/operators';
import{Login} from './login';
@Injectable({
  providedIn: 'root'
})
export class LoginService {

  apiUrl = 'http://localhost:3000';

constructor(private http:HttpClient) { }

//httpOptions
httpOptions={ 
  headers: new HttpHeaders({
    'content-type':'application/json'
  })
}
//httpCrud Operations For RestFull Api
login(logindata:any): Observable <Login> {

  return this.http.post<Login>(this.apiUrl+'/login',JSON.stringify(logindata),this.httpOptions)
  .pipe(
    retry(2),
    catchError(this.handleError)
  ) };

您的后端API完全错误。如果您想在这个会话中使用会话,请不要使用make seance。如果您将此登录API从移动设备调用???那么会发生什么呢???而且您不会从后端返回任何内容。只需重写API。为什么使用
res.end()
它的工作原理类似于
exit

app.post('/login',(req,res)=>{
var username = req.body.username;
var password = req.body.password;
if(username&&password){
    con.query('SELECT * FROM register WHERE username= ? AND password=?',[username,password],(error,results,fields)=>{
            if(results.lenghtL>0){
                res.json({loggedin: true, username: username});
            }
            else{
                res.json({loggedin: false});
            }

        });
    }
    else {
        res.json({loggedin: false});
    }
});

这个问题不在节点端,而是在角度端 在发送请求时,您还应该提及您期望的响应,因为您没有提及任何内容,所以您会收到此错误 查找以下解决问题的代码

login(logindata:any): Observable <Login> {

  return this.http.post<Login>(this.apiUrl+'/login',JSON.stringify(logindata),{ this.httpOptions, responseType: 'text' })
  .pipe(
    retry(2),
    catchError(this.handleError)
  ) };
login(loginda:any):可观察{
返回this.http.post(this.apirl+'/login',JSON.stringify(loginda),{this.httpOptions,responseType:'text'})
.烟斗(
重试(2),
catchError(this.handleError)
) };

谢谢Sourav Golui欢迎向我推荐任何书籍或文章。请检查此源代码。这是在MongoDB中。:-)感谢分享“Sourav Golui”先生,请再给我提一件事,我正在做最后一年的项目,我大部分时间都在学习和使用SQL和SQL查询,所以有很多文章,,,就像你的文章一样,MongoDB也有吗?我应该使用mongodb还是Mysql?“我应该使用mongodb还是Mysql?”。这取决于你的项目。Mysql是关系数据库,MongoDB是非关系数据库。如果您使用MySQL没有关系。感谢亲爱的先生“Sourav Golui”替换了您上面提到的更正代码,错误消失了,但新错误显示请帮助我,再次查看“User RegisterDefined”responseType:“text”先生我粘贴了此代码,“responseType:“生成错误需要导入任何/模块文件吗?请尝试使用此选项{headers,responseType:'text'作为'json'}(属性)responseType:“arraybuffer”请将完整错误发送给我,以便我可以查看它。src/app/shared/login.service.ts(24,81):错误TS2345:类型{this:any;responseType:'json;}的参数不可分配给类型{headers?:HttpHeaders{[header:string]:string | string[];};observe?:“body”;params?:HttpParams{[param:string]:string | string[];};reportProgress?:boolean;responseType?:“json”;withCredentials?:boolean;}。标题不包含问题!昆汀先生,标题包含错误,问题也是为了解决该错误
app.post('/login',(req,res)=>{
var username = req.body.username;
var password = req.body.password;
if(username&&password){
    con.query('SELECT * FROM register WHERE username= ? AND password=?',[username,password],(error,results,fields)=>{
            if(results.lenghtL>0){
                res.json({loggedin: true, username: username});
            }
            else{
                res.json({loggedin: false});
            }

        });
    }
    else {
        res.json({loggedin: false});
    }
});
login(logindata:any): Observable <Login> {

  return this.http.post<Login>(this.apiUrl+'/login',JSON.stringify(logindata),{ this.httpOptions, responseType: 'text' })
  .pipe(
    retry(2),
    catchError(this.handleError)
  ) };