FCC全国宽带地图API端点故障排查:请求无响应及连接问题求助
问题背景
我排查FCC国家宽带地图API的连接问题已有多时,判断BDC Public Data API Specifications中列出的端点已不可用、故障或下线——调用该端点时完全收不到任何响应(无论成功还是失败)。
测试代码及现象
我使用Python的requests库发起GET请求,代码如下:
import requests # API Base URL base_url = "https://broadbandmap.fcc.gov/api/public/map" # User Credentials username = "username@domain.com" with open("token.txt", "r") as file: # token.txt 存储从FCC网站获取的hash_value hash_value = file.read().strip() # 3.1 获取"As Of Dates"列表 list_as_of_dates_url = f"{base_url}/listAsOfDates" print(list_as_of_dates_url) list_as_of_dates_headers = {"username": username, "hash_value": hash_value} print("Making GET request to provided URL") list_as_of_dates_response = requests.get(list_as_of_dates_url, headers=list_as_of_dates_headers) print("GET Request complete.") print('3.1 View List of "As Of Dates" Response: ', list_as_of_dates_response.json())
运行脚本后,请求会无限挂起,永远无法打印出“GET Request complete”。
浏览器测试的错误信息
我将list_as_of_dates_url粘贴到浏览器地址栏,手动在请求头中添加username和hash_value键值对,收到以下CSP相关错误:
“Refused to connect to 'https://broadbandmap.fcc.gov/api/public/map/listAsOfDates' because it violates the following Content Security Policy directive: "default-src 'none'". Note that 'connect-src' was not explicitly set, so 'default-src' is used as a fallback.”
“Refused to connect to 'https://broadbandmap.fcc.gov/api/public/map/listAsOfDates' because it violates the document's Content Security Policy.”
但API规范中从未提及需要设置connect-src。
额外尝试
我注意到通过网站的Data Download Portal手动下载数据时,基础请求URL为https://broadbandmap.fcc.gov/nbm/map/api/,于是修改API请求URL匹配该地址,但问题依旧。
求助
有没有人成功使用过National Broadband Map API?如果有,你使用的是哪个端点URL?
内容的提问来源于stack exchange,提问作者fergus_trc

