- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我是一名 C# 游戏程序员,几乎没有 Web 开发经验。
我需要将一个小文件(25-100 字节左右,取决于它的内容)上传到服务器。这是在使用 XNA 的 Windows Phone 7 上。目标服务器相当有限,仅支持 PHP 和经典 ASP。
由于 WP7 上的 CF 只能访问有限的网络命令子集,因此看起来针对保存文件的脚本的 HttpWebRequest GET 将是最佳选择。我发送的数据很小,应该可以作为 url 中的参数传递。
我一直在搜索,但还没有找到一个完整的例子,它处理客户端和服务器端脚本(主要是后者)。这与我正在寻找的很接近,只是它没有提到服务器端脚本:Upload files with HTTPWebrequest (multipart/form-data)
我得到的最接近的是:http://www.johny.org/2007/08/upload-using-c-as-client-and-php-as-server/
但是当尝试使用它时,我得到了一个未处理的异常:“远程服务器返回了一个错误:(405) 方法不允许”。到目前为止,这种方法似乎是最有希望的,但我还无法对其进行调试。
不幸的是,我只有很短的时间来实现这个,而且正如我所说的,我对网络开发只是略微熟悉。我不担心最大的安全性或可扩展性,因为这是在内部收集反馈的临时措施。基本上,我只需要最快的方法。 ;)
任何帮助都会很棒!
最佳答案
我已经解决了。首先,我的服务器不支持 PHP(刚刚得知 PHP 和 ASP 不能在同一台服务器上使用,这取决于它是在 Linux 还是 Windows 上——就像我说的,网络开发菜鸟在这里!)。我切换到 ASP,在深入研究文档后,编写了这个脚本:
<%
dim theData, theFileName
set theData=Request("data")
set theFileName=Request("filename")
dim fs,tfile
set fs=Server.CreateObject("Scripting.FileSystemObject")
set tfile=fs.CreateTextFile(Server.MapPath(theFileName+".txt"))
tfile.WriteLine(theData)
tfile.Close
set fname=nothing
set fs=nothing
set theData=nothing
set theFileName=nothing
%>
此 C# 代码上传文件:
const string cAddress = "http://site.com/folder/upload.asp";
string fileName = foo;
string data = bar;
string address = cAddress + "?filename=" + fileName + "&data=" + data;
uploadRequest = (HttpWebRequest) HttpWebRequest.Create(address);
uploadRequest.Method = "GET";
uploadRequest.GetResponse();
希望这有助于其他人寻找如何执行此操作的示例!
关于C# 上传文件到服务器 - 客户端和服务器端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5213015/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!