- Home /
Android : www.error 401 when using credentials in URL over HTTPs
Hi, I've been having issues donwloading files on Android. I am using Unity 5.2.2.
Here's the setup : We have a server (OwnCloud) in which we host bundle files. At the start of the app, I use a www to download those files, but the request returns the error : 401 Unauthorized. The weird thing is it only happens on an Android device. If we run from editor, we have no issues. If we run from iOS, we have no issues. I've also tried connecting to OwnCloud through the Android WebBrowser : that also works. Even going with the webdav url works from the browser. It just fails with Unity.
Here's what the code looks like :
using (var www = new WWW("https://username:password@server.com/remote.php/webdav/folder/file")) {
yield return www;
if (!string.IsNullOrEmpty (www.error)) {
Debug.Log (string.Format("www : {0} ({1})", www.error, www.url));
yield break;
}
www.assetBundle.Unload (false);
}
I can make this work with WebRequest if I set credentials before making the request (That's how an older version of the app was doing it), But I can't achieve the same with WWW, Why? We swapped to www for the LoadOrDownloadFromCache which makes "versioning" easy, and would like to keep it that way.
Any help with this would be greatly appreciated.
I've looked around and didn't find an answer to my problem. Here's most of what I found :
http://forum.unity3d.com/threads/unity-5-api-authentication.306566/ <-This one is about iOS, but the problem seems similar.
http://answers.unity3d.com/questions/395188/caching-assetbundle-loaded-without-using-wwwloadfr.html <-- That would be a decent workaround
http://answers.unity3d.com/questions/394036/www-class-with-authentication.html
-EDIT-
After looking around some more, I have the feeling Android tries to skip authentication and download files directly. (At least when using www) Or it actually tried doing both at once while the server actually expect authentification first and then the download... A lot of what I read was about IIS and HTTPS, and also a bit about SSL but i'm still nowhere near an answer :(
-EDIT 2-
I found out that we're running OwnCloud version 6.0.1, which isn't the latest, i'll try some things and report back here.
Your answer
Follow this Question
Related Questions
Android www ssl error 0 Answers
www not working on android and iOS 0 Answers
WWW.text problems on android 1 Answer
Android https request returns SSLHandshakeException 2 Answers
WWW and SSL on Android 1 Answer