2016-07-22 46 views
0

我已经创建azure Easy API.I可以通过Invoke API客户端方法传递参数值。但是我的问题是无法在API.am中获取模式名称,从而导致意外的连接错误。如果输入manualy模式名称,我会得到结果。如何在执行Easy API时将参数值传递给模式名称?

IN my controller 
 

 
    $scope.saveuserdet = function (user) { 
 
     $scope.LicenceId = user.LicenceId; 
 
     $scope.username = user.username; 
 
     $scope.name = user.name; 
 
     
 
     var adduserclient = new WindowsAzure.MobileServiceClient('http//xxxxxxx'); 
 
     adduserclient.invokeApi('APIname', { 
 
      body: null, 
 
      method: "post", 
 
      parameters: { 
 
       schemaname :'myschemaname', 
 
       license: $scope.LicenceId, 
 
       uname: $scope.username 
 
       
 
      } 
 
     }).done(function (results) { 
 
      var message = results.result.count + " item(s) marked as complete."; 
 
      
 
     }, function (error) { 
 
      $scope.showmessage = " Details are not Saved.Try Again"; 
 
     }); 
 
    };

module.exports = { 
 
    //"get": function (req, res, next) { 
 
    //} 
 
    "post": function (req, res, next) { 
 
     var query = { 
 
     // sql: 'EXEC **@schemaname.<Storedprocedurename>** @license,@uname ', 
 

 
      sql: 'EXEC **"'+ Myschema Name +'".<Storedprocedurename>** @license,@uname ', 
 
      parameters: [ 
 
       { name: 'schemaname', value: req.query.schemaname }, 
 
       { name: 'license', value: req.query.license }, 
 
       { name: 'uname', value: req.query.uname }]    
 
       }; 
 

 
     req.azureMobile.data.execute(query).then(function (results) { 
 
      res.json(results); 
 
     }); 
 
    } 
 
    
 
};

回答

0

我用你的关键代码段,以测试在我身边。它工作正常。如果您正在使用JavaScript Client Library for Azure Mobile Apps并通过网络服务器测试您的应用程序(在浏览器上通过访问Http://localhost:<port>测试您的应用程序),则可能是由CORS问题引起的。您可以将您的本地出处设置到您的移动应用的CORS部分,在Azure门户上管理protal(https://ms.portal.azure.com)。

否则,您可以按下浏览器的F12,并在运行应用程序时确定是否有任何错误消息。

顺便说一句,因为您正在使用POST方法,我建议您通过body参数传递您的数据。 E.G.,

client.invokeApi('APIname', { 
     method: "post", 
     body: { 
      schemaname :'myschemaname', 
      license: $scope.LicenceId, 
      uname: $scope.username 

     } 
    }) 

而在您的Easy APIs脚本中,您可以通过res.body获取数据。

+0

感谢它的工作.. – divya

相关问题