ajax.service.js 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /*
  2. *封装的ajax函数
  3. * Created by ZHJY on 2020/06/03.
  4. * @param option.type 请求类型 get 和 post
  5. * @param option.json 数据请求方式,
  6. * @param option.url(必选) 请求的url地址 相同域名下的页面(此函数不支持跨域请求)
  7. * @param option.data(必选) 请求协带的参数 以js对象的形式定义,如:{name:'张三'}
  8. * @param option.replace 是否更新续签
  9. * @param option.mask 是否使用模态层加载动画
  10. */
  11. var Http = {
  12. AjaxService : function(option){
  13. var NODE_ENV_BASE_URL = $("#spiServer").val();
  14. var REV_TOKEN_ENV = '',REV_TOKEN_USERID='';
  15. var GET_LOGIN_STAUS = JSON.parse(window.localStorage.getItem("userInfo"));
  16. if (GET_LOGIN_STAUS != null) {
  17. REV_TOKEN_ENV = GET_LOGIN_STAUS.token;
  18. REV_TOKEN_USERID = GET_LOGIN_STAUS.userID;
  19. }else{
  20. REV_TOKEN_ENV = 'X-token'
  21. }
  22. var loading = '';
  23. var def = $.Deferred();
  24. $.ajax({
  25. url: NODE_ENV_BASE_URL + option.url,
  26. data: option.data,
  27. xhrFields: {//此处为跨域后台保持session一致,切勿删除!!!
  28. withCredentials: true
  29. },
  30. type: option.type,
  31. dataType: "json",
  32. headers: { 'X-Token': REV_TOKEN_ENV },
  33. async:false,
  34. contentType: option.json ? 'application/json;charset=UTF-8' : 'application/x-www-form-urlencoded',
  35. beforeSend:function () {
  36. // if (option.mask) {
  37. // loading = layer.load(0,{shade: [0.1,'#000']}); //0.1透明度的白色背景
  38. // }
  39. }
  40. }).then(function(res) {
  41. if(res.code== -99){
  42. CAIMEI.Alert('登录已失效,请重新登录','去登录',true,function () {
  43. CAIMEI.Storage.clear();
  44. location.href = "/login.html";
  45. });
  46. }else{
  47. def.resolve(res);
  48. }
  49. }, function(error) {
  50. CAIMEI.Alert('网络请求超时,请重试~','确定',true,function () {
  51. window.location.reload();
  52. });
  53. def.reject(error);
  54. });
  55. return def;
  56. },
  57. uploadImage : function(option,callback) {//上传图片
  58. var NODE_ENV_BASE_URL = $("#spiServer").val();
  59. // var NODE_ENV_BASE_URL = 'https://spi-b.caimei365.com';
  60. $.ajax({
  61. url: NODE_ENV_BASE_URL + option.url,
  62. type: 'POST',
  63. cache: false,
  64. data: option.data,
  65. processData: false,
  66. contentType: false,
  67. dataType: "json",
  68. success: function (res) {
  69. callback(res)
  70. },
  71. error: function (xhr, type, errorThrown) {
  72. console.log("照片上传失败")
  73. }
  74. });
  75. }
  76. };