I'm not able to use
URLFetch in my
$UserBaseDirectory/Kernel/Init.m as it always returns
ImportString[Null, Text, CharacterEncoding -> "ISO8859-1"].
Here is my test code, which works in a Notebook, but runs forever in the init file:
ip = $Failed; While[ip == $Failed, ip = Quiet@Check[URLFetch@"http://tyilo.com/ip/", $Failed] ]; MessageDialog[ip];
The reason I would like to use
URLFetch in my init script is that I have distributed it to a couple of friends and I would like to make it automatically update.
Everything except the
URLFetch part of the auto-update script works, so it would be nice to be able to finish this feature.
If you could make it run asynchronously after Mathematica has fully started up, that would be fine too.
$Epiloginstead. (I haven't tried it and it should be noted that it's invoked when returning from a
Dialogas well, which may not be a good thing in this case.) Be careful about using things like
MessageDialog, they're not command line friendly. $\endgroup$
Needs["JLink`"]; JLink`InstallJavadoes work in init.m, but it doesn't fix URLFetch. $\endgroup$
init.m. Back then, the check for the OS like
If[StringMatchQ[$SystemID,"Linux-*"],..did not work. I thought we (I mean literaly, you and me) had spoken about it. $\endgroup$
StringMatchQuses some java stuff for the regex matching. $\endgroup$