0

我正在使用 .NET 列出来自我的方形帐户的付款。

我能够获得付款列表,但要获得描述字段,我必须更深入一层并为每次付款进行 http 端点调用。这很耗时。

问题:任何人都可以为我提供 Visual C# 或 Java 中的示例以进行批量调用以检索付款(使用多个付款 ID)吗?

非常感谢您的帮助。

谢谢,

普拉尚

@Andrew - 这是我正在使用的,我只是不确定如何添加标题以进行批量付款检索。

字符串 res = string.Empty;

        string qs = string.Empty;
        foreach (string s in parameters.Keys)
        {
            if (qs == string.Empty)
                qs = "?";
            else
                qs += "&";
            qs += s + "=" + parameters[s];
        }

        HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(_connectUrl + "/" + command + qs); ///
        request.Proxy = null;
        request.Headers.Add("Authorization", "Bearer " + _accessToken);// ");
        request.ContentType = "application/json";

        request.Method = method; // "GET";


        try { HttpWebResponse responseGet = (HttpWebResponse)request.GetResponse(); 
        StreamReader reader = new StreamReader(responseGet.GetResponseStream());
        StringBuilder output = new StringBuilder();
        output.Append(reader.ReadToEnd());
        responseGet.Close();

        request = null;

        return output.ToString();
        }
        catch (Exception exp)
4

1 回答 1

1

看起来我已经能够回答我自己的查询了。

我们需要能够将以下 POST 发送到 HTTP 端点

{"requests":[{"method":"GET","re​​lative_path":"/v1/me/payments/<payment_id>","access_token":"XXXX","re​​quest_id":"1"},{ "method":"GET","re​​lative_path":"/v1/me/payments/<payment_id>","access_token":"XXXX","re​​quest_id":"2"}]}

.NET 中的以下代码实现了上述

        //Convert the body of request into a byte array
        byte[] byteArray = Encoding.UTF8.GetBytes(body);

        //Set the length
        request.ContentLength = byteArray.Length;

        //Write the body to the request by using a datastream
        //This line never returns....
        Stream datastream = request.GetRequestStream();
        datastream.Write(byteArray, 0, byteArray.Length);
        datastream.Close();

这就是它的全部。

希望这可以帮助任何准备使用批处理模式的人。

谢谢

于 2014-06-04T19:57:17.653 回答