代码之家  ›  专栏  ›  技术社区  ›  Sharan

如何使用reformation和RxJava Android发布Application/Json类型

  •  0
  • Sharan  · 技术社区  · 6 年前

    我坚持只张贴标题和位置,这是一系列的纬度和长,我需要检查这个。我知道这还不够。我将进一步编辑请帮助我了解这一步。

    JsonObject jsonObject = new JsonObject();
    jsonObject.addProperty("title","Dombivli");
    JsonArray locationArray = new JsonArray();
    locationArray.add(19.2093305);
    locationArray.add(73.0645624);
    jsonObject.add("location", locationArray);
    
    subscription.add(createPointsOfViewModel.postAdd(jsonObject).subscribe(new Observer<PostPojo>() {
                        @Override
                        public void onCompleted() {
                            Toast.makeText(CreatePointsOfInterestActivity.this, "Complete", Toast.LENGTH_SHORT).show();
    
                        }
    

    public interface CreatePointsOfInterestService {
        @Headers({
                "Accept: application/json",
                "Content-Type: application/json"
        })
        @POST("http://dev.citrans.net:8888/skymeet/swagger-ui.html#!/poi-controller/saveProductUsingPOST")
            rx.Observable<PostPojo> postAdd(@Body JsonObject body);
        }
    

    我要添加的JSON:

    {
      "createdAt": "2018-08-09T05:49:42.958Z",
      "createdBy": "string",
      "description": "string",
      "id": "string",
      "imageUrl": "string",
      "location": [
        0
      ],
      "poiId": "string",
      "status": "ACTIVE",
      "title": "string",
      "updatedAt": "2018-08-09T05:49:42.958Z",
      "updatedBy": "string",
      "version": 0
    }
    
    2 回复  |  直到 6 年前
        1
  •  0
  •   Viraj Patel    6 年前

    您的API URL错误。你好像是路过 page URL 而不是API URL。

    @POST("http://dev.citrans.net:8888/skymeet/poi/add")  
    

    而不是

    @POST("http://dev.citrans.net:8888/skymeet/swagger-ui.html#!/poi-controller/saveProductUsingPOST")  
    

    另外,请注意,作为响应,它在Postman中给出了200个状态代码,但是服务器的响应可能有一些问题。因此,通过替换上面的API URL,您的API将被成功调用,但您必须向后端开发人员检查响应。

        2
  •  0
  •   H. Ekici    6 年前

    @POST
    rx.Observable<PostPojo> postAdd(@Url String url, @Body JsonObject body);