Golang/Java 无法从中间件中解组 JSON

我正在为 GoLang 应用程序(http://hoverfly.io/)编写中间件,但遇到了一些问题。


这个概念很简单。Golang 将 JSON 输入传递给我的 Java 中间件,然后我的中间件将修改后的 json 输出返回给 Golang 应用程序。


import java.io.BufferedWriter;

import java.io.File;

import java.io.FileWriter;

import java.io.IOException;

import java.util.Scanner;

import org.json.JSONObject;


public class mid

{


    static String payload  ="";

    public static void main (String[] args) throws Exception

  {

    try {

        @SuppressWarnings("resource")

        Scanner scanner = new Scanner(System.in);



         payload = scanner.nextLine();



        JSONObject obj = new JSONObject(payload);



        JSONObject response = obj.getJSONObject("response");


        response.remove("status");


        response.put("status", "500");




        String newjson = obj.toString();



         write (newjson);


        System.out.print(obj);



    } catch (Exception e) {

        e.printStackTrace();

    }




  }    

}

然后我运行程序:


./hoverfly -middleware "java -jar mid.jar"

Go 是否期待某种特殊的 JSON 格式或者问题可能是什么?

感谢所有帮助。


猛跑小猪
浏览 156回答 1
1回答

qq_花开花谢_0

错误消息说cannot unmarshal string into Go value of type int。这意味着您正在发送一些东西,就像stringGo 期望它是一个int.Go 代码正在尝试使用此定义解组 JSON解决方案:"status":"500"应该发送为"status":500尝试 response.put("status", 500);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go