【问题标题】:Google Maps Geolocation API returns the latitude and longitude of my serverGoogle Maps Geolocation API 返回我服务器的纬度和经度
【发布时间】:2016-09-03 01:53:04
【问题描述】:

在我的测试期间,地理定位 API 用于返回正确的结果。 但在 AWS 上部署时,它会返回我的 EC2 实例所在的弗吉尼亚 IP 地址。

"cellId": 27193, "locationAreaCode": 17007, "mobileCountryCode": 404, “mobileNetworkCode”:20

结果: “纬度”:19.2019619, “液化天然气”:73.1063466

但在 AW 上它会返回: “纬度”:39.043756699999996 “液化天然气”:-77.4874416

    params = {
        "key": SERVER_KEY
    }

    data = json.dumps({
        "cellTowers": [
            {
                "cellId": cid,
                "locationAreaCode": lac,
                "mobileCountryCode": mcc,
                "mobileNetworkCode": mnc
             }
         ]
    })

    log.info(params)
    log.info(data)
    request = requests.post(HOST_URL, params=params, data=data)
    # print(request.text)
    # print(request.status_code)

    if request.status_code == 200:
        response = json.loads(request.text)

        latitude = response["location"]["lat"]
        longitude = response["location"]["lng"]

        return {
            "latitude": latitude,
            "longitude": longitude
        }

    else:
        error_data = request.text
        log.error("Error Occurred in Finding Cell Tower Location")
        log.error(request.text)
        log.error(json.dumps(params))
        send_error_notification(error_data)
        return None

【问题讨论】:

    标签: amazon-web-services geolocation


    【解决方案1】:

    答案是如此简单,我多么愚蠢地假设不添加标题不会影响我。

    只需添加带有 application/json 的标头,一切都会像魅力一样工作。

        params = {
            "key": SERVER_KEY
        }
    
        data = json.dumps({
            "considerIp": False,
            "cellTowers": [
                {
                    "cellId": cid,
                    "locationAreaCode": lac,
                    "mobileCountryCode": mcc,
                    "mobileNetworkCode": mnc
                 }
             ]
        })
    
        headers = {
            'content-type': "application/json",
            'cache-control': "no-cache"
        }
    
        log.info(params)
        log.info(data)
        request = requests.post(HOST_URL, params=params, data=data, headers=headers)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多