作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我目前正在做一个项目,需要一些用 Prolog 编写的 Web 应用程序,我选择使用著名的 SWI-Prolog PWP 库。它在 HTML 文件中解析 带有 prolog 查询的脚本
。
我有一个响应以下请求示例的页面:
/user?id=N
其中 N
是一个整数值。
但是我无法读取 HTML 文件中请求的查询字符串 ID
。
我有 .pl 文件:
showUser(UserId, Request) :-
reply_pwp_file(mydir('user_page.html'), [mime_type('text/html')], Request).
我不知道如何读取 UserId
或 Request
以再次检索查询字符串中的 UserId。
我在 HTML 标记中尝试过这种方式:
<span pwp:ask="http_parameters(Request, [id(UserId, [optional(true)])])." pwp:use="UserId" />
以前有人遇到过这种麻烦吗?
非常感谢。
这里有一些可能对我们有帮助的有趣链接:
最佳答案
我花了一些时间,但至少我已经能够运行我在 ~/pl-devel/packages/http/examples 中找到的 demo_pwp.pl。现在,之后
?- server(1234).
我打开网址
http://localhost:1234/user_id.pwp?user_id=1&user_name=carlo
我在 ~/pl-devel/packages/http/examples/pwp/user_id.pwp
文件中写的地方
<?xml version="1.0"?>
<!DOCTYPE html>
<html xmlns:pwp="http://www.cs.otago.ac.nz/staffpriv/ok/pwp.pl">
<head>
<title>Context variables for PWP scripts</title>
</head>
<body>
<p>This PWP demo lists the context-parameters that are passed into
the script.
</p>
<ul>
<li pwp:ask="member(Name=Value, CONTEXT)">
<span class=name pwp:use="Name"/>
=
<span class=value pwp:use="writeq(Value)"/>
</li>
</ul>
<!-- here is the specific part for my answer -->
<p pwp:ask="memberchk('QUERY'=Q, CONTEXT),memberchk(user_id=UID,Q),memberchk(user_name=NAME,Q)">
UID : <span pwp:use="UID"/> / NAME : <span pwp:use="NAME"/>
</p>
<!-- nested access is well thought -->
<p pwp:ask="member('QUERY'=Q,CONTEXT)">
UID : <span pwp:use="UID" pwp:ask="member(user_id=UID,Q)"/>
/ NAME : <span pwp:use="NAME" pwp:ask="member(user_name=NAME,Q)"/>
</p>
</body>
</html>
(这是 context.pwp 的副本,在底部添加了我的信息)我得到了
This PWP demo lists the context-parameters that are passed into the script.
...
- QUERY = [user_id='1',user_name=carlo]
...
UID : 1 / NAME : carlo
UID : 1 / NAME : carlo
然后我可以确认 Giulio 建议的指南是可以的。
关于http - 在 Prolog 中处理 PWP HTML 页面内的 http 查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15887958/
我目前正在做一个项目,需要一些用 Prolog 编写的 Web 应用程序,我选择使用著名的 SWI-Prolog PWP 库。它在 HTML 文件中解析 带有 prolog 查询的脚本。 我有一个响应
我是一名优秀的程序员,十分优秀!