使用 Bonjour 发布 Web 服务

发布于 2024-12-04 09:46:58 字数 681 浏览 1 评论 0原文

的场景

我正在使用 Phonegap 构建混合应用程序 。我有一个 SQLite 数据库(学生),其中有一个表(名单),其中包含项目内的姓名列表。我无法从 JavaScript 执行 SQL 查询。

需要

在 UIWebView 中的按钮单击事件上,对 Web 服务的 ajax 调用应执行选择查询并 zap json 中的名称,将其填充到 UIWebView 内的 div 中。这部分我可以处理。缺少的链接是代码隐藏。我们需要像 PHP 或 ASP 这样的服务器脚本语言来连接到数据库并检索数据。但是,我想在我的应用程序本身上执行此操作。所以我遇到了用于发布、发现和解决服务的 Bonjour。

疑问

是否可以使用 Bonjour 将方法公开为 Web 服务。举个例子,在Python中,当我们使用cherrypy框架时,我们使用注释@expose将方法公开为服务。

import cherrypy
from cherrypy import expose

class Services:
@expose
def add(self,a,b):
    return a+b

 cherrypy.quickstart(new Service())

抱歉将 python 拖入其中,但是如何使用 Bonjour 将 Objective C 方法公开为 Web 服务?我说得有道理吗? :D

The scenario

I am building a hybrid app, using Phonegap. I have an SQLite database (students) with a table(namelist) containing list of names inside the project. From JavaScript, I can't execute an SQL query.

The need

On a button click event in the UIWebView, An ajax call to a webservice should execute the select query and zap the names in a json, populate it in the div inside UIWebView. This part I can handle it. The missing link is the codebehind. We need a server scripting langauge like PHP or ASP to connect to the db and retrieve data. However, I want to do it on my app itself. So I came across Bonjour for publish, discovery and resolution of service.

The doubt

Is it possible to expose a method as a webservice with Bonjour. Take for example, in Python, when we use the cherrypy framework we use the annotation @expose to expose a method as service.

import cherrypy
from cherrypy import expose

class Services:
@expose
def add(self,a,b):
    return a+b

 cherrypy.quickstart(new Service())

Sorry for dragging python into this, but how do I expose an Objective C method as a web service with Bonjour? Am I making sense at all? :D

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文