我正在尝试从Android应用程序访问受用户名和密码保护的Sharpoint网站上的XML文件。使用:
网址url =新网址(“http://用户名:password@thewebsite.com/file/test.xml);
URLConnection ucon = url.openConnection();
InputStream is = ucon.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
ByteArrayBuffer baf = new ByteArrayBuffer(50);
导致找不到文件异常。如果我在网站上关闭了用户名/密码要求,但是当我将其更改为需要用户名和密码时,它找不到该文件。
答案 0 :(得分:0)
下载这样的文件是行不通的,因为你没有通过SharePoint认证(它抛出的错误实际上不是FileNotFoundException,但很可能是AccessDenied异常 - 你必须查找SharePoint ULS登录14 / LOGS文件夹)。
我不是android开发人员(也不是java),但我想最好的方法是使用SharePoint Web服务,尤其是Copy Web Service。您必须从Web服务的.wsdl文件生成客户端代理类,然后您可以通过代码调用它。
有人here尝试实现类似的功能(只上传而不是下载),这样可以让您在解决方案方面有一个良好的开端。另外here是您可能需要的一段代码 - 它位于C#中,但您应该能够将其转换为Java。
希望这有帮助