1

我想在用户个人资料上上传图片。我有一个Bitmap形式的图像。我正在使用此代码...

        Bitmap bit = new Bitmap("E:\\abc.jpg");
        MemoryStream ms = new MemoryStream();

        bit.Save(ms, ImageFormat.Jpeg);

        byte[] buffer = ms.ToArray();


        HttpWebRequest req = (HttpWebRequest)WebRequest.Create("https://graph.facebook.com/me/photos?access_token=" + acc_token);

        req.Method = "POST";
        req.ContentLength = buffer.Length;
        //req.ContentType = "application/x-www-form-urlencoded";
        req.ContentType = "image/jpeg";                       

        Stream rq_strm = req.GetRequestStream();
        rq_strm.Write(buffer, 0, buffer.Length);
        rq_strm.Close();

        HttpWebResponse res = (HttpWebResponse)req.GetResponse();     //got error here
        Response.Write("RESPONSE: " + res.StatusDescription);

我收到错误The remote server returned an error: (400) Bad Request.我错在哪里?

4

1 回答 1

0

基本上,这意味着服务器无法识别您的请求。通常对于 API,这意味着 API 无法破译某些内容,或者它缺少一个重要功能。在这种情况下,它确定您没有包含任何source标签。通常,这是通过带有<input type='file'>标签的 HTML 表单发送的。模拟这个的方法相当复杂,但 这个问题会为你指明正确的方向。

于 2012-11-24T19:10:04.203 回答