我在VS 2013中处理现有的Windows服务项目。
我已经添加了一个web API Controller类,如果它是一个(v2.1)或(v1)控制器类,我现在还记得....无论如何我称之为SynchroniseFromAwsService
我试图从AWS lambda调用中调用它,但它告诉我我没有访问权限。所以我需要在本地测试它,看它是否正在尝试和诊断问题。
我想在本地测试这个,但我不确定该怎么做..请看代码...
namespace Workflow
{
public class SynchroniseFromAwsService: ApiController
{
//// POST api/<controller>
public string SapCall([FromBody]string xmlFile)
{
string responseMsg = "Failed Import User";
if (!IsNewestVersionOfXMLFile(xmlFile))
{
responseMsg = "Not latest version of file, update not performed";
}
else
{
Business.PersonnelReplicate personnelReplicate = BusinessLogic.SynchronisePersonnel.BuildFromDataContractXml<Business.PersonnelReplicate>(xmlFile);
bool result = Service.Personnel.SynchroniseCache(personnelReplicate);
if (result)
{
responseMsg = "Success Import Sap Cache User";
}
}
return "{\"response\" : \" " + responseMsg + " \" , \"isNewActiveDirectoryUser\" : \" false \"}";
}
}
}
我已经在谷歌上阅读下载名为Postman的程序并对其进行测试。
我可以在VS中调用什么,只传入一个包含xml文件的虚拟数据字符串进行测试?
什么是最好的方式
谢谢你的回复
您可以使用
适用于.NET的RestSharp简单REST和HTTP API客户端
访问http://restsharp.org/了解更多详情。
使用nuget包管理器在您的项目中安装此依赖项
Install-Package RestSharp -Version 106.2.0
你的代码是对的。你需要在本地测试它。您可以使用Postman rest客户端本身完成它。这很简单。 在您的代码中,您的函数SapCall缺少HTTP方法属性。因此,请指定用于标识请求类型的方法的属性。
[HttpPost]
public string SapCall([FromBody]string xmlFile){
现在使用postman rest客户端并调用你的url url。它将成功执行。