0

我有一个测试 API(get 方法),我已经在生产环境中部署了测试数据。

如果我从任何地方直接从 Browser 调用这个 API,它就可以完美运行。我创建了一个 Web 应用程序,只需一个提交单击按钮,即可调用该 API。我在 Azure 上部署了 Web 应用程序。

它不起作用。它不断给我操作超时异常。API没有受到打击。API 获取请求从浏览器工作。我尝试在 api 中使用记录器,日志文件保持空白。

可以请任何人帮助我吗?

编辑:

当我通过浏览器调用时,我得到以下响应

此 XML 文件似乎没有任何与之关联的样式信息。文档树如下所示。

<ArrayOfMessage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ValidationWebApi">

<Message>

<MessageDesc>

[{"NO":"111","NAME":"Miss Jane ","EXTENSION":"","MOBILE":"","EMAIL_ID":SOME EMAIL ID}]

</MessageDesc>

<MessageId i:nil="true"/>

<WebApiInfo i:nil="true"/>

<isValid>1</isValid>

</Message>

</ArrayOfMessage>

但是,如果我通过 Azure 托管站点调用,我会收到以下错误...

`System.Net.WebException:操作在 System.Net.WebClient.DownloadString(Uri address) 在 System.Net.WebClient.DownloadString(String address) 的 System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request) 处超时) 在 Test.btnSubmit_Click(Object sender, EventArgs e)

编辑:

调用 this 来检查它是否被击中的方法如下 这是按钮单击事件。我们只是想在屏幕上打印这个响应。使用Get方法。

string strApi = "https://domain.com/myApiName/Jane";
try
    {
        using (var client = new WebClient())
        {
         var result = client.DownloadString(strApi);
         Response.Write(result);

        }

}

我在 var 结果语句上遇到异常。它在那里等待一段时间并给出异常。

问候, 阿沙

4

1 回答 1

0

尝试为您的 API 控制器启用 CORS(跨域 HTTP 请求)..

谢谢卡萨姆谢赫

于 2016-09-09T13:25:43.683 回答