首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用windows phone对文件进行base64编码并上传到PHP?

如何使用windows phone对文件进行base64编码并上传到PHP?
EN

Stack Overflow用户
提问于 2014-01-23 00:55:26
回答 1查看 423关注 0票数 0

我只想从windows phone上载一个.dat文件到一个php脚本。

这是我的代码,但不起作用。有谁能找到原因吗?

C#:

代码语言:javascript
运行
复制
string fileBase64 = "UklGRt4lAABXQVZFZm10IBAAAAABAAEARKw...";

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://...mysite.../upload.php");
request.Method = "POST";
request.ContentType = "application/octet-stream";

string postData = String.Format("file={0}", fileBase64);   

// Getting the request stream.
request.BeginGetRequestStream
    (result =>
    {
        // Sending the request.
        using (var requestStream = request.EndGetRequestStream(result))
        {
            using (StreamWriter writer = new StreamWriter(requestStream))
            {
                writer.Write(postData);
                writer.Flush();
            }
        }

        // Getting the response.
        request.BeginGetResponse(responseResult =>
        {
            var webResponse = request.EndGetResponse(responseResult);
            using (var responseStream = webResponse.GetResponseStream())
            {
                using (var streamReader = new StreamReader(responseStream))
                {
                    string srresult = streamReader.ReadToEnd();
                }
            }
        }, null);
    }, null);

PHP:

代码语言:javascript
运行
复制
    define("UPLOAD_DIR", "./uploads/");


    if(isset($_POST['file']))
    {
        $base64_string = $_POST['file'];
        $ifp = fopen( UPLOAD_DIR.'aaa.dat', "wb" ); 
        fwrite( $ifp, base64_decode($base64_string) ); 
        fclose( $ifp ); 

        echo "ok";
        echo $base64_string;
        echo base64_decode($base64_string);

    }else{
            echo "no submit";
        }
EN

回答 1

Stack Overflow用户

发布于 2014-01-26 06:11:19

您滥用了HTTP协议。

这是到服务器的the correct way to upload files。请务必阅读注释,而且您可能希望异步执行此操作。对于异步路径,我建议您尝试C#语言的新异步等待特性,与开始/结束方法相比,它对这类任务非常有帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21289104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档