1
我有一個API的簡單Flask後端,並且想要創建POST。 我不確定錯誤是什麼 - 我收到錯誤消息,但不確定它是否存在Angular或Flask問題。我想在我的瓶request.get_json(),並得到了使用JSON製作Angular2 POST
{}錯誤請求400錯誤請求:瀏覽器(或代理)發送的 該服務器無法理解
Angular2呼叫的請求我service.ts:
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable} from 'rxjs/Rx';
import { Headers } from '@angular/http';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
@Injectable()
export class NicksService {
private headers = new Headers({'Content-Type': 'application/json'});
nickUrl: string = "http://localhost:5000/nick";
constructor(private http: Http) { }
// Send the nick to the server to see if it is valid
checkNickValidity(nickName: string): Observable<string>{
return this.http.post(this.nickUrl, JSON.stringify({nick: nickName}), {headers: this.headers})
.map(this.extractData)
.catch(this.handleError)
}
瓶後端:
from flask_cors import CORS
from flask.ext.api import FlaskAPI
from flask import request
app = FlaskAPI(__name__)
CORS(app)
@app.route('/')
@app.route('/nick', methods=['POST'])
def check_nick():
try:
nick = request.json
if nick =='AmandaPanda':
return 'Good'
else:
return 'No nick found'
except:
return 'error'
if __name__ == '__main__':
app.run()
400通常意味着服務器無法接受您的請求,因爲請求不符合預期的格式。它可能包含內容類型,請求參數,網址,標題等。您需要檢查服務器以確定問題。 – YuVi