对于我的学校,我们必须做这些“咨询课程”,告诉你有关大学等的内容。完成课程后,我想知道我是否能够使用来自PHP的一组请求复制相同的过程脚本与cURL。
我再次阅读了这一课,这次是使用Firebug和HTTP Analyzer。
令我惊讶的是,在整个课程中发出了唯一的GET请求。
如果你好奇,这就是“课程”窗口的样子。这是一种powerpoint类型的东西,你在那里阅读幻灯片,然后一些幻灯片对它们有疑问。最后,有一个小测验,如果你没有通过,那么课程就不算数了。
我的问题是:如果我要设置登录到我的帐户的PHP / cURL脚本,然后完成这些请求中的每一个,那么课程是否会被计为完成?
现在很明显,你们不可能知道他们的服务器是如何工作的......
我想我的意思是,是否有任何隐藏的内容或字段可以通过GET请求传递?它似乎似乎没有课程窗口向服务器传递足够的信息,以便它知道课程是否完整。
非常感谢您对我项目的任何建议和提示!
编辑:这是我的正式试运行(请不要做太多次):正如你们许多人暗示的那样,它没有用......但我仍然不完全确定原因。
答案 0 :(得分:0)
就像你说的那样,我们不能谈论他们服务器的细节,但 可以用GET请求来做这些事情,因为服务器可以使用cookie和存储状态(相关联)使用这些cookie)在服务器上。
这可能会将额外的隐藏信息传递给服务器。
您可以研究Cookie,甚至可以查看其网址中出现的jsessionid
内容。 BTW会告诉你,他们至少使用了一些Java。 :)
答案 1 :(得分:0)
课程应用程序可能很好地将数据存储在会话或其他一些持久数据存储服务器端,并使用浏览器中的令牌(通常是cookie或GET参数)在需要时查找该数据。
答案 2 :(得分:0)
这是一项复杂的任务。仅使用cURL,您无法模拟javascript代码,AJAX请求等的执行
答案 3 :(得分:0)
我不确定你要做什么。对于一个HTTP是无状态协议,意味着服务器获取请求并给出对该特定请求的响应(可能是GET,POST或其他任何可能有一些请求参数)。系统使用状态通常由服务器创建会话和在客户端设置cookie以在以后的请求中传递会话ID来实现。会话ID用于识别客户端并跟踪其会话。您在请求期间发送的所有内容都是纯文本。您最有可能得到的回应将取决于会话状态,也将是纯文本。客户端没有任何关于客户端的信息。您只是不知道服务器在会话中保留了哪些信息,以及如何根据您在请求期间提供的信息处理请求。