Javascript 将 URL 解析为 $.getJSON 的参数

Javascript parse URL as parameter for $.getJSON

我正在尝试将 URL 解析为参数 以及前端中的多个 others 以发送 JSON 请求我的 Django 后端,但我收到众所周知的 404 错误 - 未找到。

Django urls.py 路径:

path("updateAssignment/<iD>/<body>/<deadline>/<user>/<url>/<game>/<aK>/<seoTitle>/<payment>/<wordCount>/<category>/<state>/", Dashboard.update_assignment, name="updateAssignment")

Javascript $.getJSON 请求

function updateAssignment(assignmentId){

const assignmentUpdateEndpoint = "/updateAssignment/";



let body =  encodeURIComponent(document.getElementById("Assignment-Body"+assignmentId).value);
let deadline =  encodeURIComponent(document.getElementById("Assignment-Deadline"+assignmentId).value);
let user =  encodeURIComponent(document.getElementById("Assignment-User"+assignmentId).value);
let url =   encodeURIComponent(document.getElementById("Assignment-URL"+assignmentId).value);
let game =  encodeURIComponent(document.getElementById("Assignment-Game"+assignmentId).value);
let additionalKeywords =  encodeURIComponent(document.getElementById("Assignment-Additional-Keywords"+assignmentId).value);
let seoTitle =  encodeURIComponent(document.getElementById("Assignment-SEOtitle"+assignmentId).value);
let payment =  encodeURIComponent(document.getElementById("Assignment-Payment"+assignmentId).value);
let wordCount =  encodeURIComponent(document.getElementById("Assignment-WordCount"+assignmentId).value);
let category =  encodeURIComponent(document.getElementById("Assignment-Category"+assignmentId).value);
let state =  encodeURIComponent(document.getElementById("Assignment-State"+assignmentId).value);
assignmentId = encodeURIComponent(assignmentId);

let reqUrl = assignmentUpdateEndpoint +  assignmentId + "/" + body + "/" + deadline +"/" + user + "/" + url + "/" + game + "/" + additionalKeywords + "/" + seoTitle + "/"  + payment + "/" +  wordCount + "/" + category + "/" + state + "/";

$.getJSON(reqUrl).done((response) => {
    
});

请求仅在 真正的 URL 被解析时抛出错误 ,因此问题必须与它相关以及我猜它是如何编码的。帮助会很棒。

通过使用 $.ajax 而不是 $.getJSON 修复了它。

$.ajax({
  type: "get",
  url: endpoint,
  data: {},
  sucess: (response) => {
    
  }});
  

以正确的格式将数据传输到服务器。