我需要从许多 URL 创建一个通用 URL,例如,如果我有 5 个 URL 用于某些页面,我想创建一个新的 URL 用作这 5 个 URL 的缩短 URL,换句话说,我需要这些 URL 来保存其他 URL 以某种方式返回给我,当我将其放在地址栏中时,如果它在选项卡中打开它们将是完美的
我不知道我怎么能做到这一点,一般如何创建一个 URL?以及如何让它做这样的事情。
这可能是一个基本问题!但我是网络应用程序的菜鸟,如果还不够清楚,请见谅
我需要从许多 URL 创建一个通用 URL,例如,如果我有 5 个 URL 用于某些页面,我想创建一个新的 URL 用作这 5 个 URL 的缩短 URL,换句话说,我需要这些 URL 来保存其他 URL 以某种方式返回给我,当我将其放在地址栏中时,如果它在选项卡中打开它们将是完美的
我不知道我怎么能做到这一点,一般如何创建一个 URL?以及如何让它做这样的事情。
这可能是一个基本问题!但我是网络应用程序的菜鸟,如果还不够清楚,请见谅
您需要一个运行 php、jsp 或任何其他后端语言的网络服务器。那么您需要使用其中一种语言编写一个页面,该页面将链接数组作为获取变量并返回一个 javascript 正文,该正文在选项卡中打开此 url 列表。
例如在 php
使用序列化和反序列化 PHP 函数将链接数组发送到 php 页面。此函数为您提供数组类型的可存储(字符串)版本。有关使用的更多信息,请阅读http://php.net/manual/en/function.serialize.php和http://www.php.net/manual/en/function.unserialize.php
然后循环 URL 并为每个 URL 添加这样的回显消息。
<?php
foreach ($arrayOfUrls as $url) {
echo '<script type="text/javascript">var win = window.open('.$url.', "_blank"); </script>';
?>
最后,您需要从您的 javascript 代码中调用此页面,您需要序列化具有 url 列表的 JS 数组。
您可以为此使用此代码。
/*
* PHP Serialize
* Morten Amundsen
* mor10am@gmail.com
*/
function php_serialize(obj)
{
var string = '';
if (typeof(obj) == 'object') {
if (obj instanceof Array) {
string = 'a:';
tmpstring = '';
count = 0;
for (var key in obj) {
tmpstring += php_serialize(key);
tmpstring += php_serialize(obj[key]);
count++;
}
string += count + ':{';
string += tmpstring;
string += '}';
} else if (obj instanceof Object) {
classname = obj.toString();
if (classname == '[object Object]') {
classname = 'StdClass';
}
string = 'O:' + classname.length + ':"' + classname + '":';
tmpstring = '';
count = 0;
for (var key in obj) {
tmpstring += php_serialize(key);
if (obj[key]) {
tmpstring += php_serialize(obj[key]);
} else {
tmpstring += php_serialize('');
}
count++;
}
string += count + ':{' + tmpstring + '}';
}
} else {
switch (typeof(obj)) {
case 'number':
if (obj - Math.floor(obj) != 0) {
string += 'd:' + obj + ';';
} else {
string += 'i:' + obj + ';';
}
break;
case 'string':
string += 's:' + obj.length + ':"' + obj + '";';
break;
case 'boolean':
if (obj) {
string += 'b:1;';
} else {
string += 'b:0;';
}
break;
}
}
return string;
}
输出网址将像yourphppage.php?urls=""a:3{i:0;s:4:"URL1";i:1;s:8:"URL2";i:2;s:7:"URL2";}
您可以使用 PaseteBin 及其 API。他们有一个API列表,您的 webapp 可以使用这些 API 以纯文本格式存储 URL 并将它们返回给您。生成的 pastebin URL 将是您的 URL,其中包含其他 URL。
我需要这些 URL 以某种方式保存其他 URL,并在我将其放入地址栏中时将它们返回给我
做到这一点的唯一方法是在资源级别。例如,您可以使用 HTML 文档的 URL,它会立即打开 5 个弹出窗口(尽管这会被大多数浏览器阻止)或在框架中打开 5 个页面(这将是一个令人讨厌的 UI)。
一般如何创建 URL?
运行网络服务器。然后将运行它的机器的地址(其 IP 地址或使用 DNS 设置的主机名)与您选择的 Web 服务器软件处理的本地部分结合起来。