You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BlackboxProtobuf解析Protobuf响应时负数值异常显示为正数值的排查求助

BlackboxProtobuf解析Protobuf响应时负数值异常显示为正数值的排查求助

我现在碰到一个棘手的问题:用blackboxprotobuf解析Protobuf接口响应时,本该是负数的字段被解析成了正数,完全不符合预期。

具体情况是这样的:
我调用某API时传入了纬度40.741895和经度-73.989308,通过付费框架生成了密钥81859706用于请求接口。请求代码如下:

url = "https://gspe85-ssl.ls.apple.com/wifi_request_tile"

response =requests.get(url, headers={
    'Accept': '*/*', 
    'Connection': 'keep-alive',
    'X-tilekey': "81859706",
    'User-Agent': 'geod/1 CFNetwork/1496.0.7 Darwin/23.5.0',
    'Accept-Language': 'en-US,en-GB;q=0.9,en;q=0.8',
    'X-os-version': '17.5.21F79'
    })

接口返回的是Protobuf格式的数据,我用blackboxprotobuf将其转成JSON格式处理,代码片段如下:

message, typedef = blackboxprotobuf.protobuf_to_json(response.content)
json1_data = json.loads(message)

但解析后的结果里,本该对应负数经度的字段变成了正数,比如这段响应里的"2": 3555038608,这个值实际应该是负数:

"2": [
            {
                "4": {
                    "2": {
                        "1": 1,
                        "2": 1
                    }
                },
                "5": 124103876854927,
                "6": {
                    "1": 407295068,
                    "2": 3555038608 // 这个值应该是负数
                }
            },

有没有大佬能指点下怎么排查和修复这个问题?万分感谢!

备注:内容来源于stack exchange,提问作者Anand

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 12:09:29