私は.postペイロードと "要求に有効なレコードセットが含まれていません"という400のエラーが発生するのに苦労しています。私はPostgres DBに投稿したいと思います。ここに私のペイロードがサーバーに送られています。これはJSON形式の文字列です。それは拒絶されています。私は残りの部分にnoobのだと角度JSを、学習などフォーム入力からJSONオブジェクト用のClientHttpを使ってAngular REST APIを設定する方法は?
{"resource":[{"first_name":"John","last_name":"Johnson","main_skill_title":"Application developer - frontend","main_skills":"Angular,JavaScript",,"country":"United States","email":"[email protected]"}]}
DreamFactoryミドルウェアはコンソールでエラーメッセージと、この場合には、彼らのAPIのドキュメントで推奨してURLが設定され:
http://localhost:8080/api/v2/pfpsql/_table/members 400 (Bad Request)
DreamFactoryミドルウェアはAngular 2の例ですが、Angular開発のRCステージで書かれていて、古くなっています。また、コードはスタイルガイドに従っていません。
私は成功しました.get。このコードは正常に動作し、Angular Material2 DataTableに手動でデータベースに入力したデータを入力します。コンポーネントで
GET:サービスで
constructor(private http: HttpClient) {}
ngAfterViewInit() {
this.membersAdminService = new MembersAdminService(this.http);
// This is for the Material2 DataTable.
Observable.merge(this.paginator.page)
.startWith(null) // Delete this and no data is downloaded.
.switchMap(() => {
return this.membersAdminService.getMembers(
this.paginator.pageIndex);
})
.map(data => {
return data.resource; // Change from json to array data.
})
.subscribe(data => {
this.dataLength = data.length;
this.dataSource.data = data;
});
}
がGET:
constructor(
private http: HttpClient,
) { }
public getMembers(page: number): Observable<DfApi> {
return this.http.get<DfApi>(this.baseUrl, {headers: this.headers});
}
問題が.postのペイロードです。私はこのコードをベースとして使用し、様々なソースから様々なObservable演算子とHttpClientの提案を試みましたが、dbにメンバーを追加したものは何もありませんでした。私は間違ったトラックにはっきりしていますが、どこに?このコードのデータパッケージは、この記事の冒頭にリストされています。サービスで
POST:コンポーネントで
public addMember(memberData) {
this.http.post(this.baseUrl, memberData, {headers: this.headers})
POST:
save(addMemberForm) {
const enteredData = this.addMemberForm.addEditMemberForm.value;
const memberData = JSON.stringify(enteredData);
const jsonData = '{"resource": [' + memberData + ']}';
this.membersAdminService.addMember(jsonData);
}