我正在为aigaming.com编写go客户端,当我发出无效请求时,响应将包含一些错误信息。我想使用
错误数据的JSON结构如下:
这个文本的翻译如下:
有没有一种方法可以解析这些混合类型的项目?我是否可以通过将所有整数元素强制转换为字符串来绕过此问题?
更新: 这是我所说的“空”。正确数量的东西都在那里,但它们似乎没有初始化。 {{link1:
}}
struct
捕获此响应,但是当类型开始混合时,我遇到了麻烦。错误数据的JSON结构如下:
{
"errorMessage":"An error occurred (ValidationException) when calling the Query operation: ExpressionAttributeValues contains invalid value: One or more parameter values were invalid: An AttributeValue may not contain an empty string for key :v0",
"errorType":"ClientError",
"stackTrace":[
[
"/var/task/OfferGame.py",
612,
"lambda_handler",
"game = offerGame.createOffer()"
],
[
"/var/task/OfferGame.py",
586,
"createOffer",
"gameRow = self.findSuitableWaitingGame()"
],
[
"/var/task/OfferGame.py",
503,
"findSuitableWaitingGame",
"Key('GameStyleId_GameStatus').eq(str(self.gameStyleId) + '_' + self.Game.KEY_GAME_STATUS_WAITING)"
]
// There are more items, but I'll omit them for brevity
]
}
这个文本的翻译如下:
捕获大多数信息并不困难,但是stackTrace
项会带来麻烦。它是一个混合类型的数组嵌套数组。
到目前为止,我得到的最好结果是使用这个结构体。它实际上没有给我任何数据(所有元素都为空),但它返回了正确数量的元素和嵌套元素。
type ErrorResponse struct {
ErrorMessage string `json:"errorMessage"`
ErrorType string `json:"errorType"`
StackTrace [][]interface{} `json:"stackTrace"`
}
有没有一种方法可以解析这些混合类型的项目?我是否可以通过将所有整数元素强制转换为字符串来绕过此问题?
更新: 这是我所说的“空”。正确数量的东西都在那里,但它们似乎没有初始化。 {{link1:
![enter image description here](https://istack.dev59.com/xGzsx.webp)