0

我们在一台服务器上使用 C/Side 尝试在不打开浏览器窗口的情况下调用另一台服务器上 PHP 脚本的 URL。我们希望脚本作为后台进程运行。到目前为止,我们尝试过的所有操作都会打开浏览器。有什么建议么?

4

2 回答 2

0

我使用 HttpClient 来做到这一点。但在 Nav 中并不是那么直接,因为您不能调用异步方法并将其返回值分配给变量。所以我在 C# 中创建了一个包装类。

public class NavHttpClient
{
    private HttpResponseMessage responseMsg;
    public HttpResponseMessage ResponseMsg
    {
        get { return responseMsg; }
    }

    public async Task GetAsync(string requestUri)
    {
        HttpClient client = new HttpClient();
        responseMsg = await client.GetAsync(requestUri);
    }
}

然后我将这个类导出到类库中。现在我可以这样使用它 Nav :

NavWebClient:DotNet NavWebClient.NavHttpClient.'NavWebClient,版本 = 1.0.0.0,文化 = 中性,PublicKeyToken = null'

NavWebClient := NavWebClient.NavHttpClient;
NavWebClient.GetAsync('http://localhost').Wait;

IF NavWebClient.ResponseMsg.IsSuccessStatusCode THEN
  ...
于 2014-12-27T10:25:41.690 回答
0

解决方案是否适合您的需求?里面有指向 Nav 2013 的 codeunit 的链接,允许使用 Nav 样式的 Web 服务。

于 2015-01-12T08:23:45.030 回答