簡體   English   中英

我如何在angular2發布請求中發送2個對象

[英]how can i send 2 object in angular2 post request

我有以下代碼:

客戶端(angular2)

     saveConfig(configType: ConfigTypes, gasConfigModel: GasConfigModel): any {
        console.info("sending post request");
        let headers = new Headers({
          'Content-Type': 'application/json'
        });

....

        return this.http
          .post(this.url, formParamString, ??, {headers: headers})
          .map(res => res.json())
          .subscribe(
            data => {
              console.info("next: ");
              console.info(data)
            },
            err => console.error(err)
          );
      }

服務器端:

@Path("/SaveConfig")
@POST
@Consumes(MediaType.APPLICATION_JSON + ";charset=utf-8")
@Produces(MediaType.APPLICATION_JSON + ";charset=utf-8")
public void saveConfig(MyObj my object, CountryGasStationConfig countryGasStationConfig) throws Exception {....}

我知道如何在帖子中發送一個對象,但是如何在帖子請求中發送2個對象?

由於您使用Json作為媒體,因此從技術上講是不可能的,因為單個文檔中的兩個單獨的任意對象將是無效的Json。

但是,這里的潛在解決方案是創建一個包裝這兩個對象的對象。

請求對象

public SaveConfigRequest {
    private MyObj myObject;
    private CountryGasStationConfig countryGasStationConfig;


    //getters and setters
}

新方法簽名

public void saveConfig(SaveConfigRequest request)

示例Json文檔

{
  "myObject": {...},
  "countryGasStationConfig": {...}
}

發送兩個具有不同鍵值的對象,將它們組合到一個大對象上,例如:

obj1;
obj2;
obj2send={
'obj1':obj1,
'obj2':obj2
};

現在這個obj2send里面有兩個對象

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM