我正在为大学做一个项目,其中一个网站将命令发送到 Windows 窗体应用程序。该应用程序负责访问串口并发送和接收命令。
网站和 Windows 窗体应用程序之间的通信,我使用了 Web Api,但是在发布后,试听后想起了 C# WebSite 中的 localhost。Net 自己的站点,而不是我的 Windows 窗体应用程序。
我更改了对 Web Api 的调用,直接使用 Ajax 而不是控制器。在我发现的示例中,我看到我使用 JSONP,但我无法读取结果并在我的网站上使用它。
Chrome看到的调用代码和返回如下
function cmdLocal() {
$.ajax({
type: "GET",
dataType: "jsonp",
url: "http://local host:8089/api/gps/",
jsonpCallback: "cmdTorre",
jsonp: "cmdTorre"
});
}
function cmdTorre(data) {
alert(data);
}
响应头
Content-Length:10
Content-Type:application/json; charset=utf-8
Date:Tue, 10 Jun 2014 11:18:30 GMT
Server:Microsoft-HTTPAPI/2.0
回复
No Properties
Windows 窗体 APIController
namespace TCCWindows.Lib
{
public class GPSController : ApiController
{
[HttpGet]
public string Posicao()
{
var coordenada = TCCWindows.FormPrincipal.PegarCoordenadas();
return coordenada.Latitude + "|" + coordenada.Longitude + "|" + coordenada.Altitude;
}
}
}