0

我正在尝试编写一个简单的 html 页面来创建两个数据馈送的混搭。数据馈送源之一是一个 PHP 页面,每次请求时都会生成一个 Google 地球 KMZ 文件。我的目标是“实时”在我的页面上的地图上显示此提要。

特定的 PHP 页面需要身份验证,我有用户名和密码。当我将 URL 插入 Web 浏览器时,它会询问我的凭据,我提供它们并下载 KMZ 文件。

我想让我的 html 页面使用 javascript 向 PHP 页面发出 HTTP 请求,检索返回的 KMZ 并将其加载到地图上。

我对这种事情完全陌生,所以如果我朝着正确的方向前进,请告诉我,这可能吗?

4

1 回答 1

0

您没有指定在远程端使用哪种类型的身份验证,因此,我将做出一些猜测和假设:

基本 HTTP 身份验证

如果使用“基本 HTTP 身份验证”(这将显示一个浏览器弹出窗口,请求该领域的用户名/密码),您可以按如下方式制定您的请求 URL:

http://username:password@host.name/file.name?parameter=x

在哪里:

  • username是您实际已知的用户名
  • password实际密码
  • host.name远程服务器的地址,
  • file.name您尝试访问的 PHP 文件
  • 可选: parameter=x从 PHP 文件获取所需输出所需的任何已知参数

PHP 身份验证

如果实际的身份验证是由 PHP 页面本身完成的,那就另当别论了。在这种情况下,这完全取决于 PHP 脚本使用哪些变量来执行身份验证,特别是哪种类型的参数。最常用GET或被POST使用(或者如果REQUEST被使用,两者都会起作用)。

无论哪种方式,您都必须知道正在使用的参数的名称。我将假设user以下pass示例。

在 PHP 脚本中,这些看起来像$_GET['user'], $_POST['user']$_REQUEST['user']或者$user如果危险的register_globals设置在php.ini.

GET或的情况下REQUEST

http://host.name/file.name?user=username&pass=password&parameter=x

在以下情况下POST

可以POST使用 JavaScript 赋值。这个 SO 答案给出了一个工作示例。

还要别的吗

如果使用任何其他方法(还有很多其他方法),则需要更具体的信息来确定确切的方法和可行的解决方案。

于 2012-07-18T13:43:40.897 回答