2016-12-02 60 views
0

POST請求我創建一個POST請求,但我也需要指定「類型的鏈接關係」。所以身體應該是這樣的:定製角2

{ 
       "_links":{ 
        "type":{ 
         "href":"http://example.co.uk/rest/type/node/article" 
        } 
       }, 
       "title":[{"value": "Blog title"}], 
       "body":[{"value": "Body content"}] 
      } 

到目前爲止我m從用戶輸入(表單)獲得標題和正文,但是我不知道如何將這個新對象添加到我的請求中。

這是我的服務:

createBlog(blog: Blog): Observable<any>{ 
      let url = this.API_URL + "entity/node"; 
      return this.http.post(url, blog, {headers:this.headers}).map(res => res.json()).catch(err => { 

      return Observable.throw(err); 
      }); 
     } 

有了這個,我得到一個錯誤的請求

400 Bad bequest 
Response {_body: "{"error":"The type link relation must be specified."}", status: 400, ok: false, statusText: "Bad Request", headers: Headers…} 

任何提示?

回答

1

你或許應該擴大博客的對象是這樣的:

createBlog(blog: Blog): Observable<any>{ 
    blog._links = {type : { href: 'http://example.co.uk/rest/type/node/article' } }; 
    .... 
} 

而對於工作,你將需要更改博客模型包含Object類型的_link財產。

export class Blog { 
    _links: Object; 
    title: Array<Object>; 
    ... 
} 
+0

看起來是工作,但現在我得到422(無法處理的實體) –

+0

這可能是一個端點的問題,因爲在請求其他一些參數的可能。檢查您必須提交給端點的參數。 –

+0

有點奇怪,因爲在端點上不需要任何參數,並且我沒有使用郵遞員的這個問題。但是,你回答了我最初的問題,所以我會接受它。 謝謝你的幫助維克多。 –