首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能用libcurl.net上传http文件

不能用libcurl.net上传http文件
EN

Stack Overflow用户
提问于 2011-03-20 22:45:59
回答 2查看 1.6K关注 0票数 0

我正在使用libcurnet发布一些字段和html或pdf文件到服务器。我张贴字段,但不能上传文件到服务器。这是我的代码:

公共静态空主( Curl.GlobalInit((int)CURLinitFlag.CURL_GLOBAL_ALL);args) {尝试{String[] FileStream fs =新FileStream(args,FileMode.Open,FileAccess.Read,FileShare.Read);easy = new Easy();Easy.ReadFunction rf =新Easy.ReadFunction(OnReadData);easy.SetOpt(CURLoption.CURLOPT_READFUNCTION,rf);easy.SetOpt(CURLoption.CURLOPT_UPLOAD,true);easy.SetOpt(CURLoption.CURLOPT_PUT,真);easy.SetOpt(CURLoption.CURLOPT_URL,args1);easy.SetOpt(easy.SetOpt,fs);(,);easy.SetOpt(CURLoption.CURLOPT_PROGRESSFUNCTION,pf;Easy.DebugFunction wf =新Easy.ProgressFunction (OnWriteData);easy.SetOpt(CURLoption.CURLOPT_WRITEFUNCTION,wf);easy.SetOpt(easy.SetOpt,wf);(#en20 20#,“Mozilla4.0(兼容;MSIE6.0);easy.SetOpt(CURLoption.CURLOPT_FOLLOWLOCATION,Win32");easy.SetOpt(CURLoption.CURLOPT_POST,true);easy.SetOpt(CURLoption.CURLOPT_VERBOSE,1);easy.SetOpt(CURLoption.CURLOPT_STDERR,0);easy.Perform();easy.Cleanup();fs.Close();Curl.GlobalCleanup();} catch (异常ex) { Console.WriteLine(ex);}}

我不知道问题出在哪里。

EN

回答 2

Stack Overflow用户

发布于 2011-03-21 02:30:59

尝试使用fiddler2监视TCP流,特别是头部分,并将其与从浏览器执行手动上载进行比较。

票数 0
EN

Stack Overflow用户

发布于 2011-08-01 07:29:42

我想,您从这里下载的库本身。如果是,尝试使用来自/samples/FileUpload.cs的上载示例

就像这样。

代码语言:javascript
复制
        MultiPartForm mf = new MultiPartForm();        

        // <input type="File" name="f1">
        mf.AddSection(CURLformoption.CURLFORM_COPYNAME, "uploadedfile",
            CURLformoption.CURLFORM_FILE, "C:\\My Files\myUploadFile.exe",
            CURLformoption.CURLFORM_CONTENTTYPE, "application/binary",
            CURLformoption.CURLFORM_END);

        Easy easy = new Easy();
        easy.SetOpt(CURLoption.CURLOPT_HTTPPOST, mf);
        easy.SetOpt(CURLoption.CURLOPT_URL, "localhost/uploader.php");

不要忘记在服务器上更改php.ini中的“php.ini”,以获取超过2Mb的文件。

在文件"uploader.php“中,您需要编写类似的内容。

代码语言:javascript
复制
<?php
  $target_path = "/uploaded/". basename( $_FILES["uploadedfile"]["name"]);
  if(move_uploaded_file($_FILES["uploadedfile"]["tmp_name"], $target_path)) 
  {     
    echo "[File Upload Successful]";
  } 
  else
  {
    echo "[File Upload Error]";
  }
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5372079

复制
相关文章

相似问题

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