Javascript 通过调用函数使用Ajax调用RESTAPI

Javascript 通过调用函数使用Ajax调用RESTAPI,javascript,ajax,rest,user-interface,Javascript,Ajax,Rest,User Interface,我必须调用rest API并获得响应,目前我正在这样做,它工作得很好,但我需要通过函数调用它,需要传递两个参数,这两个参数将在URL中使用,并且需要从该函数返回响应,以便我可以在其他类中使用它作为响应 $.ajax({ url: "BaseURL"+param1+"/" + param2 }).then(function (data) { if (data.test== null) self.prop1(data.test); if (data.test2 !== null)

我必须调用rest API并获得响应,目前我正在这样做,它工作得很好,但我需要通过函数调用它,需要传递两个参数,这两个参数将在URL中使用,并且需要从该函数返回响应,以便我可以在其他类中使用它作为响应

$.ajax({
  url: "BaseURL"+param1+"/" + param2
}).then(function (data) {
  if (data.test== null)
    self.prop1(data.test);
  if (data.test2 !== null)
    self.prop2(data.test2);
  if (data.test3 !== null)
    self.prop3(data.test3)
});

你能提供一些建议吗?如果你需要我这边的任何信息,请告诉我。

我建议你在函数之外建立URL:

// Define URL variable 
var BaseURL = 'www.baseurl.com';
var param1 = '<param1>';
var param2 = '<param2>';
var URL = `${BaseURL}${param1}/${param2}`

function AJAXPost(RequestType, formData, URL){
    $.ajax({
      url: URL
      type: RequestType,
      data: formData
      //Test success / error
    })
}
//定义URL变量
var BaseURL='www.BaseURL.com';
var param1='';
var param2='';
var URL=`${BaseURL}${param1}/${param2}`
函数AJAXPost(请求类型、表单数据、URL){
$.ajax({
url:url
类型:RequestType,
数据:formData
//测试成功/错误
})
}

您可以创建一个同时包含参数和第三个参数作为回调的函数,以返回数据

function request(param1, param2, callback) {
  $.ajax({
    url: "BaseURL"+param1+"/" + param2
  }).then(function(data) {
    callback(data);
  });
}
或者使用异步

const req = async (param1, param2) => {
  try {
    let data = await $.ajax({url: `BaseURL${param1}/${param2}`});
    return data;
  } catch(e) {
    console.error(e);
  }
}

在第一种方法中,从另一个脚本文件调用上述函数并获得响应