小编Nuc*_*eon的帖子

打印C中Dbus方法调用的响应

我遇到的问题是使用低级API 在C中专门打印出dbus方法调用的响应.我是C的libdbus新手,但在python-dbus上做了一些工作.

  • 我知道如何在python和CLI中编写dbus方法和方法调用
  • 我可以在互联网上找到代码来调用dbus方法,但它们不会返回或打印出响应
  • 我一直在看libdbus doxygen api,但无法确定如何拉出响应.

我设置代码的方式,python dbus守护进程运行我想要调用的方法.其中一些返回一个字符串.我想要一个C程序连接到会话总线,调用方法,打印出答复并退出.

这就是我目前所拥有的:

#include <stdio.h>
#include <dbus/dbus.h>

static void send_dbus_message (DBusConnection *connection, const char *msg)
{
DBusMessage *message;
//initialize the message
message = dbus_message_new_signal ("/org/example/foo/bar",
                                    "org.example.foo.bar",
                                    msg);

//send the message
dbus_connection_send (connection, message, NULL);
//deallocate the message
dbus_message_unref (message);
}

int main (int argc, char **argv)
{
DBusConnection *connection;
DBusError error;

//init error message
dbus_error_init (&error);
connection = dbus_bus_get (DBUS_BUS_SESSION, &error);
if (!connection)
{
    printf ("Connection to D-BUS daemon failed: %s", error.message); …
Run Code Online (Sandbox Code Playgroud)

c methods dbus bus reply

4
推荐指数
1
解决办法
8673
查看次数

如何在不使用 CGI 的情况下在 python3.x 中获取 POST“数据”变量?

当我尝试调用cgi.FieldStorage()一个python3.xCGI脚本,我得到以下错误:

[Traceback: error in module x on line y]:
    cgi.FieldStorage()
File "/usr/lib64/python3.3/cgi.py", line 553, in __init__
    self.read_single()
File "/usr/lib64/python3.3/cgi.py", line 709, in read_single
    self.read_binary()
File "/usr/lib64/python3.3/cgi.py", line 731, in read_binary
    self.file.write(data)
TypeError: must be str, not bytes
Run Code Online (Sandbox Code Playgroud)

如何data从 ajax 调用中获取我的 POST变量?

示例ajax调用:

function (param) {
    $.ajax({
       type: "POST",
       url: "/cgi-bin/mycgi.py/TestMethod",
       data: JSON.stringify({"foo": "bar"}),
       contentType: "application/json; charset=utf-8",
       dataType: "json",
       success: function (result) {
           alert("Success " + result);
       },
       error: function () {
           alert("Failed");
       }
    }); …
Run Code Online (Sandbox Code Playgroud)

ajax post encoding cgi python-3.x

4
推荐指数
1
解决办法
2020
查看次数

标签 统计

ajax ×1

bus ×1

c ×1

cgi ×1

dbus ×1

encoding ×1

methods ×1

post ×1

python-3.x ×1

reply ×1