0

我希望第一次启动 ajax。我将使用它对表单中的字段进行服务器端验证。基本上,ajax 传递用户提供的输入,一些 php 代码执行 if else 规则并相应地发送回响应。在我的 php 代码中,一些字符串将包含敏感数据,用户是否能够阅读或看到这些字符串?

感谢所有有用的答案,现在非常清楚:)。

4

4 回答 4

2

Ajax 使用 HTTP 就像整个页面刷新一样。如果您要发送和/或接收敏感数据,则需要确保将 SSL 用于 Ajax 调用,就像您使用安全表单提交一样。

于 2012-04-17T16:58:46.977 回答
1

Ajax 使用 HTTP,AJAX 请求的响应仅包含 PHP 脚本生成的数据。如果您不回显包含敏感数据的字符串,那么响应将无法包含它们。

如果要传输敏感数据,则必须使用 HTTPS。

于 2012-04-17T17:04:38.420 回答
1

如果敏感数据在服务器端的 php 中应该没问题。只是不要返回 ajax 任何敏感信息。

PHP 在服务器端处理,任何来自 ajax 的 php 请求都会在服务器上执行 php 脚本并返回处理结果。客户端看不到 php 代码。

于 2012-04-17T17:06:39.453 回答
1

回答

在我的 php 代码中,一些字符串会包含敏感数据

是的,如果用户尝试,他们可以看到服务器的响应。但是,如果您的敏感数据在 PHP 代码中并且永远不是响应的一部分,他们将无法看到它。

尽管如此,也永远不要将敏感信息放在源代码中,因为任何有权访问您的 PHP 源代码的人都将能够获得该信息。如果他们愿意,一个令人毛骨悚然的网络托管公司理论上可以做到这一点。

提示

既然你刚开始,我想提一下你应该使用 jQuery 来做你的 Ajax东西。

尝试解释 Ajax

当您进行 Ajax 调用时,您会在页面加载后使用 HTTP 协议发送请求。JavaScript 发出请求、接收响应并对加载到浏览器中的 HTML DOM 进行更改,而无需刷新。

Requests: Ajax function --(HTTP(S))--> SERVER --(HTTP(S))--> Ajax function

Action: Ajax function --> interpret response and manipulate DOM accordingly

所以换句话说,它就像浏览器在协议方面发出的请求,只是它是一个 Ajax 函数在做这件事。因此,适用于浏览器的这些请求的任何内容也适用于此处。

通常响应是 JSON 字符串,因为 Ajax 函数很容易将其解释为 JavaScript。

于 2012-04-17T17:09:01.847 回答