Example #1
0
    async Task <Pack> WtWpcCallInner(string functionName, Pack requestPack, string url, CancellationToken cancel = default)
    {
        requestPack.AddStr("function", functionName);

        WpcPack wpcPostPack = new WpcPack(requestPack);

        var wpcPostBuffer = wpcPostPack.ToPacketBinary().Span.ToArray();

        using var http = new WebApi(this.Options.WebApiOptions, this.CheckValidationCallback);

        var webRet = await http.SimplePostDataAsync(url, wpcPostBuffer, cancel, Consts.MimeTypes.FormUrlEncoded);

        WpcPack wpcResponsePack = WpcPack.Parse(webRet.ToString(), false);

        var retPack = wpcResponsePack.Pack;

        Uri uri = url._ParseUrl();

        retPack.AddStr("__remote_hostname", uri.Host);
        retPack.AddSInt("__remote_port", uri.Port);

        return(retPack);
    }
Example #2
0
    public WpcPack ToWpcPack()
    {
        WpcPack wp = new WpcPack(this.Pack);

        return(wp);
    }