我將whitebg_url根據匹配項從 sqlite 資料庫中獲取結果,并像這樣使用 django 發出 api 請求。
@api_view(['POST'])
def getUrlFromAttributes(request):
try:
print('>>>>>>>>>>>>>>>>>>>>>', request)
hairstyle = request.data.get("hairstyle")
haircolor = request.data.get("haircolor")
skincolor = request.data.get("skincolor")
print("error>>1", str(hairstyle), str(haircolor), str(skincolor))
basic_query = BasicSetup.objects.all().filter(skin_color=skincolor, hair_color=haircolor, hair_style=hairstyle, isDeleted= 0)
print('returned basic queyr : ', basic_query)
lists_basicSetup = list(basic_query.values( 'whitebg_url'))
print('returned lists_basicSetup : ', lists_basicSetup)
return JsonResponse({'result': lists_basicSetup})
except Exception as error:
print("error", str(error))
return JsonResponse({'result': str(error)})
但正如您在下圖中看到的結果,回應始終為無。我試圖從谷歌找到解決方案,但無法做到。

我已經在檔案中添加rest_framework了 INSTALLED_APPS 。settings.py
路徑就像定義的一樣。
path('getUrlFromAttributes', views.getUrlFromAttributes, name='getUrlFromAttributes'),
我嘗試使用 Postman 執行此操作,但結果相同。

任何人都知道為什么我會得到None這樣的結果?
uj5u.com熱心網友回復:
GET 引數不存盤在request.data. 檢查request.GET。查看
看看上面的(你的)圖片。你注意到 url 中的 Hairstyle、haircolor skincolor 等引數了嗎?
這發生在 GET 請求中。是的,日志顯示 POST,這意味著確實發生了 POST 事件。
您的資料實際上并未發布,這就是為什么您沒有在視圖函式中獲取它們的原因。
建議:
- 交叉檢查您負責發布的 JS 檔案(如果您愿意,可以在此處分享)。
- 如果您的 POST 不起作用,請嘗試從 url 中獲取引數(GET 方法,如果是非敏感資訊),只是為了測驗我的理論。
request.query_params
- 再讀一遍Django RestFrameworks oc
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/438454.html
上一篇:為什么我不能抓取所有資料?
下一篇:這次提取可能出了什么問題?
