【问题标题】:Error 500 (Internal Server Error) between API Laravel 5.4 and Angular 2API Laravel 5.4 和 Angular 2 之间的错误 500(内部服务器错误)
【发布时间】:2017-03-02 20:37:54
【问题描述】:

当我将表单角度形式发布到 API Laravel 时,我在控制台中收到错误 500(内部服务器错误)......为什么?

注意:后端 API 与 POSTMAN 完美配合。

我在 Laravel 中的 Cors.php 是:

namespace App\Http\Middleware;

use Closure;

class Cors
{
/**
 * Handle an incoming request.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  \Closure  $next
 * @return mixed
 */
public function handle($request, Closure $next)
{
    return $next($request)
    ->header('Access-Control-Allow-Origin', '*')
    ->header('Access-Control-Allow-Credentials','true')
    ->header('Access-Control-Allow','GET,POST,PUT,PATCH,DELELE,OPTIONS')
    ->header('Access-Control-Allow-Headers','Content-Type, Authorization,X-XSRF-TOKEN,X-CSRF-TOKEN','CSRF-TOKEN','XSRF-TOKEN');
   }
}

并在 register.component.ts 中:

import { Component,OnInit,Input } from '@angular/core';
import { Router } from '@angular/router';
import { NgForm } from '@angular/forms';
import { UserService } from '../../services/user.service';

@Component({
  styleUrls: ['../../templates/users/register.component.css'],
  templateUrl: '../../templates/users/register.component.html',
})

export class RegisterComponent {
title = 'register';

constructor(private _router: Router,private UserService: UserService){

}

ngOnInit() {

}
onSubmit(form:NgForm){
  this.UserService.register(form.value);
  }
}

和 user.service.ts:

import { Injectable } from '@angular/core';
 import { Http,Response,Headers } from '@angular/http';
import 'rxjs/Rx';
 import { Observable } from 'rxjs';


  @Injectable()
  export class UserService{
  constructor(private http: Http){

  }

   register( data : Object){
    const body = JSON.stringify({data:data});
    const headers = new Headers({'Content-Type':'application/json'});
    return this.http.post('http://localhost/etqan/etqan_lara/public/api/user',body,{headers:headers}).subscribe((data2) => console.log(data2));
     }
}

而 register.component.html 是:

  <!-- Header --> 
  <header>
    <div class="container">
        <div class="intro-text wow fadeInDown animated">
            <div class="row">
                <div class="col-md-4 col-md-offset-4">
                    <div class="wrap">
                        <p class="form-title">مستخدم جديد</p>
                        <form class="login" #f="ngForm" (ngSubmit)="onSubmit(f)"> 
                        <input type="text" placeholder="اسم المستخدم" name="username" ngModel />
                        <input type="text" placeholder="البريد الالكتروني" name="email"  ngModel />
                        <input type="password" placeholder="كلمة المرور" name="password"  ngModel />
                        <input type="password" placeholder="تأكيد كلمة المرور" name="repassword" ngModel />
                        <input type="submit" value="تسجيل" class="btn btn-success btn-sm" />
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</header>
<!-- Header End -->

请问我需要解决这个问题...非常感谢

【问题讨论】:

  • 内部服务器错误意味着:检查您的日志文件以获取详细信息!
  • 我在哪里可以找到它?
  • @khaledbelal 检查您的后端 API,这个可能是 http://localhost/etqan/etqan_lara/public/api/user,您可以在前端应用程序中使用它们之前使用 POSTMAN 客户端测试您的 API。
  • 后端 API 与 POSTMAN 完美配合

标签: laravel api angular header


【解决方案1】:

当删除“对象”时,我的问题就解决了。谢谢

register( data ){
const body = JSON.stringify({data:data});
const headers = new Headers({'Content-Type':'application/json'});
return this.http.post('http://localhost/etqan/etqan_lara/public/api/user',body,{headers:headers}).subscribe((data2) => console.log(data2));
 }

【讨论】:

    猜你喜欢
    • 2019-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-03
    • 1970-01-01
    • 2017-11-05
    • 2021-08-25
    • 2017-10-16
    相关资源
    最近更新 更多