Могу ли я получить некоторые специфические данные третьего api в качестве дополнительного свойства для моего представления django api?
У меня есть представление api, которое получает данные из своей модели. Я хочу, чтобы это представление api имело дополнительное значение от стороннего api. Вот views.py, который получает все свойства своей модели.
@api_view(
["GET"],
)
def bussiness_asset_risk_details(request):
res = models.BusinessImpact.objects.all().values(
"hierarchy",
"business_assets",
"asset_name",
"vendors",
"product",
"version",
"cpe",
"asset_type",
"asset_categorization",
"_regulations",
"asset_risk",
)
return Response({"business_impact_details": res})
Вот стороннее представление api, получающее определенные собственные значения.
@api_view(
["GET"],
)
def cve_summery(request, key):
r = requests.get(
"https://services.nvd.nist.gov/rest/json/cves/1.0?cpeMatchString={}".format(
key)
)
if r.status_code == 200:
result = []
res = r.json().get("result").get("CVE_Items")
for rs in res:
data = {
"VulnID": rs.get("cve").get("CVE_data_meta").get("ID"),
"Summery": rs.get("cve").get("description").get("description_data"),
"exploitabilityScore": rs.get("impact")
.get("baseMetricV2")
.get("exploitabilityScore"),
"severity": rs.get("impact").get("baseMetricV2").get("severity"),
"impactScore": rs.get("impact").get("baseMetricV2").get("impactScore"),
}
result.append(data)
return Response(result)
return Response("error happend", r.status_code)
Логика здесь такова: я хочу, чтобы bussiness_asset_risk_details представление возвращало "severity": rs.get("impact").get("baseMetricV2").get("severity"), из cve_summery представления.
NB: THE KEY parameter in cve_summery view IS cpe of bussiness_asset_risk_details
Спасибо.