function expandShortURL(su)
{
var nu = v2c.expandShortURL(su, true);
if (nu) {
return nu;
}
var conn = (new java.net.URL(su)).openConnection();
conn.setInstanceFollowRedirects(false);
var rc = conn.getResponseCode();
if (rc == 301 || rc == 302 || rc == 303 || rc == 307) {
su = conn.getHeaderField("location") + "";
}
if (rc == 200) {
// ... getContent -> Encoding -> URL PatternMatch -> return expanded_url
}
return su;
}
var su = "any short url";
v2c.alert(expandShortURL(su));
ZnVuY3Rpb24gZXhwYW5kU2hvcnRVUkwoc3UpCnsKCXZhciBudSA9IHYyYy5leHBhbmRTaG9ydFVSTChzdSwgdHJ1ZSk7CglpZiAobnUpIHsKCQlyZXR1cm4gbnU7Cgl9CgoJdmFyIGNvbm4gPSAobmV3IGphdmEubmV0LlVSTChzdSkpLm9wZW5Db25uZWN0aW9uKCk7Cgljb25uLnNldEluc3RhbmNlRm9sbG93UmVkaXJlY3RzKGZhbHNlKTsKCXZhciByYyA9IGNvbm4uZ2V0UmVzcG9uc2VDb2RlKCk7CglpZiAocmMgPT0gMzAxIHx8IHJjID09IDMwMiB8fCByYyA9PSAzMDMgfHwgcmMgPT0gMzA3KSB7CgkJc3UgPSBjb25uLmdldEhlYWRlckZpZWxkKCJsb2NhdGlvbiIpICsgIiI7Cgl9CglpZiAocmMgPT0gMjAwKSB7CgkJLy8gLi4uIGdldENvbnRlbnQgLT4gRW5jb2RpbmcgLT4gVVJMIFBhdHRlcm5NYXRjaCAtPiByZXR1cm4gZXhwYW5kZWRfdXJsCgl9CgoJcmV0dXJuIHN1Owp9Cgp2YXIgc3UgPSAiYW55IHNob3J0IHVybCI7CnYyYy5hbGVydChleHBhbmRTaG9ydFVSTChzdSkpOwo=