我想使用openrasta以RESTful方式实现文件上传,但无法找到实现它的正确方法。使用Ajax文件上传或使用我能找到的Iframe的方法很少。
任何人都可以建议这样做或者从我可以推荐的地方提供一些资源。
提前致谢
答案 0 :(得分:2)
在我看来,你正试图在html环境中构建文件上传。
你有两个选择。
使用HTML表单上传文件。
<form enctype="multipart/form-data" action="/files" method="post">
<fieldset>
<input type="file" name="filename" />
<input type="submit" />
</fieldset>
</form>
您可以非常轻松地在OR中映射它。你的处理程序看起来像这样:
public object Post(IFile filename) { /* do something with the file */ }
您无法使用进度条执行基于ajax的文件上载,因为纯xmlhttprequest无法操作二进制文件。如果你沿着场景后面使用flash / silverlight控件的路线走下去,你只需要确保将文件的内容发布到/files
,就像上一个例子中一样,最简单的方法是发送带有application-octet-stram的Content-Type http标头的内容,以及相同的处理程序代码将起作用。