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); }
public WpcPack ToWpcPack() { WpcPack wp = new WpcPack(this.Pack); return(wp); }