如何在WEBIDE项目中调用XSJS服务?

2020-09-15 17:00发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我在WEB IDE中有一个应用程序,在我的应用程序中同时使用XSODATA和XSJS服务。我试图在我的应用程序中使用XSJS服务执行发布。 我尝试了在各种博客中提到的 ajax 通话。 但是我得到了405错误方法的回复。

这是我尝试过的代码。

方法1:

 var postPayLoad = {
 客户:" 123603596",
 客户名称:"穆罕默德·艾哈迈德"
 客户电子邮件:" testmail@qgtc.com",
 服务名称:r_seaman_cell0,
 VESSELNAME:"液化天然气船",
 PORTNAME:" Alruwais港口",
 预计到达时间:" 2018-05-08",
 联接:" 1",
 委托人:" 0",
 };
  Array1.push(postPayLoad);
  var datavalue = JSON.stringify(Array1);
 };

   $ .ajax({
           网址:"/img/S **********/***/N ***** s/HusbandryRFQMultiple.xsjs",
           输入:" POST",
           contentType:" application/json",
            数据:JSON.stringify(Array1),
             dataType:'json',
            成功:function(){alert(" Success");},
            错误:函数(jqXHR,textStatus,errorThrown){
          sap.m.MessageBox.show(jqXHR.responseText," ERROR","服务呼叫错误");  }
              });
 

Ajax调用方法2:

 var jurl ="/img/S **********/***/N ***** s/HusbandryRFQMultiple.xsjs";
  jQuery.ajax({
     网址:jurl,
     异步:false,
     类型:" {GET/POST}",
      数据:{dataobject:datavalue},
     beforeSend:函数(xhr){
   xhr.setRequestHeader('Authorization'," Basic" + btoa(" S ****** 6" +":" +" U ******* 7"));  },
      方法:" POST",
        dataType:'json',
        成功:功能(数据){
       警报(数据);  console.log("成功!!!:" +数据);
      },
       错误:函数(xhr,ajaxOptions,throwError){
       alert(" Errror");},}); 

但是我只得到错误响应。 我想念什么吗? 有人可以帮我吗?

此致

Ramya

(20.0 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我在WEB IDE中有一个应用程序,在我的应用程序中同时使用XSODATA和XSJS服务。我试图在我的应用程序中使用XSJS服务执行发布。 我尝试了在各种博客中提到的 ajax 通话。 但是我得到了405错误方法的回复。

这是我尝试过的代码。

方法1:

 var postPayLoad = {
 客户:" 123603596",
 客户名称:"穆罕默德·艾哈迈德"
 客户电子邮件:" testmail@qgtc.com",
 服务名称:r_seaman_cell0,
 VESSELNAME:"液化天然气船",
 PORTNAME:" Alruwais港口",
 预计到达时间:" 2018-05-08",
 联接:" 1",
 委托人:" 0",
 };
  Array1.push(postPayLoad);
  var datavalue = JSON.stringify(Array1);
 };

   $ .ajax({
           网址:"/img/S **********/***/N ***** s/HusbandryRFQMultiple.xsjs",
           输入:" POST",
           contentType:" application/json",
            数据:JSON.stringify(Array1),
             dataType:'json',
            成功:function(){alert(" Success");},
            错误:函数(jqXHR,textStatus,errorThrown){
          sap.m.MessageBox.show(jqXHR.responseText," ERROR","服务呼叫错误");  }
              });
 

Ajax调用方法2:

 var jurl ="/img/S **********/***/N ***** s/HusbandryRFQMultiple.xsjs";
  jQuery.ajax({
     网址:jurl,
     异步:false,
     类型:" {GET/POST}",
      数据:{dataobject:datavalue},
     beforeSend:函数(xhr){
   xhr.setRequestHeader('Authorization'," Basic" + btoa(" S ****** 6" +":" +" U ******* 7"));  },
      方法:" POST",
        dataType:'json',
        成功:功能(数据){
       警报(数据);  console.log("成功!!!:" +数据);
      },
       错误:函数(xhr,ajaxOptions,throwError){
       alert(" Errror");},}); 

但是我只得到错误响应。 我想念什么吗? 有人可以帮我吗?

此致

Ramya

(20.0 kB)
付费偷看设置
发送
4条回答
callcenter油条
1楼 · 2020-09-15 17:15.采纳回答

大家好,

从ajax调用中删除数据类型后,我能够使用xsjs服务实现后调用。 我还更改了ajax调用中的某些参数。 下面的代码对我有用。

 var jurl =" https://***************/********/HusbandryRFQMultiple.xsjs";
      
               jQuery.ajax({
     网址:jurl,
               类型:" POST",
               数据:数据值,
               方法:" POST",
               用户名:" S ***********",
               密码:" ******** 07",
                xhrFields:{
              withCredentials:true
                   },
               成功:功能(数据,oResponse){
               console.log(JSON.stringify(data));
 },
               错误:函数(xhr,ajaxOptions,throwError){
            console.log(throwError);
                },
               });
 

重获

Ramya

悻福寶寶
2楼-- · 2020-09-15 17:14

确定您是否将其添加为目的地并在Ui5应用程序的neo应用程序json文件中提及..

在发布之前,您还需要进行GET调用以获取X-CSRF令牌..

谢谢

Viplove

bbpeas
3楼-- · 2020-09-15 17:26

检查F12中的"网络"标签,在那儿说什么?

三十六小时_GS
4楼-- · 2020-09-15 17:24

由于发帖请求需要X-CSRF-Token,您可以 不及格你会得到405错误。 您可以检查如何在官方文档中或博客文章的第3步中添加一个 https://blogs.sap.com/2016/03/29/developing-with-xs-advanced-add-authentication/。 考虑到对于获取X-CSRF-Token的GET请求,您必须在API中提供有效的GET端点。

此致,
弗洛里安

一周热门 更多>