WebDAV获得免费空间信息

时间:2013-09-09 19:38:08

标签: c# httpwebrequest webdav yandex-api

我正在使用Yandex Disk API(http://api.yandex.com/disk/doc/dg/reference/propfind_space-request.xml)。 在请求正文中添加属性时遇到问题( quota-available-bytes quota-used-bytes

public static string SpaceInfo(string path)
{
    // Authorization.
    HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create("https://webdav.yandex.ru/");
    webReq.Accept = "*/*";
    webReq.Headers.Add("Depth: 0");
    webReq.Headers.Add("Authorization: OAuth " + token);
    webReq.Method = "PROPFIND";

    // Adding data in body request.
    string inputData = @"<D:propfind xmlns:D=""DAV:""><D:prop><quota-available-bytes/></D:prop></D:propfind>";
    byte[] buffer = new ASCIIEncoding().GetBytes(inputData);

    webReq.ContentType = "text/xml; encoding='utf-8";
    webReq.ContentLength = buffer.Length;

    try
    {
        HttpWebResponse resp = (HttpWebResponse)webReq.GetResponse();
        StreamReader sr = new StreamReader(resp.GetResponseStream());
        string dinfo = sr.ReadToEnd();

        return dinfo;
    }
}

我没有得到任何回应,也许我可以使用其他方法?我该怎么办? 谢谢!

1 个答案:

答案 0 :(得分:4)

quota-available-bytes应使用相同的命名空间“D”