标签: xml-rpc

如何在iPhone中使用XMLRPC?

我想在iphone中集成XMLRPC.但是无法理解该怎么做?任何人都有自己的信息或教程或其他东西.

xml iphone xml-rpc

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

难以构建XML-RPC.NET客户端(与Moodle一起使用)

我正在使用CookComputing XML-RPC库来构建C#控制台客户端,以便在Moodle(一个开源学习管理系统)上执行API方法.服务器正在使用ZEND XML-RPC.

当我运行代码时,我得到一个TypeLoadException是Unhandled,引用这一行:

System.Object myResults = proxy.moodle_user_get_user_by_id(myUserIds);
Run Code Online (Sandbox Code Playgroud)

"重写成员时违反了继承安全规则:'CookComputing.XmlRpc.XmlRpcFaultException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)'.重写方法的安全性可访问性必须与方法的安全性可访问性相匹配被覆盖."

我的客户端代码是:

...
using CookComputing.XmlRpc;


[XmlRpcUrl("http://moodle.ourcompany.com/webservice/xmlrpc/server.php?wstoken=somereallylongtokenstring")]
public interface IMoodleUserGetUsersById : IXmlRpcProxy
{
    [XmlRpcMethod("moodle_user_get_users_by_id")]
    System.Object moodle_user_get_user_by_id(int[] userIds);
}

namespace Moodle_test_api1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Testing XML-RPC Services for Moodle!");

            IMoodleUserGetUsersById proxy = XmlRpcProxyGen.Create<IMoodleUserGetUsersById>();

        int[] myUserIds = {11, 12};
        System.Object myResults = proxy.moodle_user_get_user_by_id(myUserIds);

        //Console.WriteLine("Trying Function: {0}:{1}", proxy.ToString());
    }
  }
Run Code Online (Sandbox Code Playgroud)

}

我想要使​​用的方法的API文档是:

moodle_user_get_users_by_id: Get users by id.


Arguments
---------
userids (Required)

General structure

list of ( 
int   //user ID …
Run Code Online (Sandbox Code Playgroud)

c# client moodle xml-rpc

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

如何摆脱红宝石的警告:已经初始化常数

我正在尝试动态重新定义gem的常量,所以我不需要修改gem本身.

require 'xmlrpc/client'

XMLRPC::Config.const_set("ENABLE_NIL_PARSER", true)

warning: already initialized constant ENABLE_NIL_PARSER
Run Code Online (Sandbox Code Playgroud)

是否有可能摆脱警告?

ruby xml-rpc

4
推荐指数
2
解决办法
1922
查看次数

xmlrpc响应数据类型可能很长?

是否有可能允许long intPython simplexmlrpc服务器的xmlrpc扩展(数据类型)?

客户端使用Apache xmlrpc,它允许8字节整数.

基本上,我正在使用此函数的示例代码来测试它:

def FcnRLong():
    x=8000000000L
    return x
Run Code Online (Sandbox Code Playgroud)

这会导致此错误:

Java exception occurred:
org.apache.xmlrpc.XmlRpcException: <type 'exceptions.OverflowError'>:long int exceeds XML-RPC limits
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?是否有支持Python 2.7的xmlrpc服务器long int

python xml-rpc simplexmlrpcserver xmlrpclib python-2.7

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

如何在C#中调用基于XML-RPC规范的API?

这是我的样品请求,

\n\n
<?xml version=\xe2\x80\x9d1.0\xe2\x80\x9d encoding=\xe2\x80\x9dUTF-8\xe2\x80\x9d?>\n <methodCall>\n  <methodName>login</methodName>\n   <params>\n    <param>\n     <value>\n      <struct>\n       <member>\n        <name>password</name>\n        <value><string>XXXXXXXXXX</string></value>\n       </member>\n       <member>\n        <name>username</name>\n        <value><string>XXXX@XXX.com</string></value>\n       </member>\n    </struct>\n  </value>\n </param>\n </params>\n</methodCall>\n
Run Code Online (Sandbox Code Playgroud)\n\n

这是我对请求的成功响应示例:

\n\n
<struct>\n  <member>\n    <name>id</name>\n    <value><string>12345</string></value>\n  </member>\n  <member>\n    <name>api_status</name>\n    <value><int>200</int></value>\n  </member>\n</struct>\n
Run Code Online (Sandbox Code Playgroud)\n\n

问题:

\n\n

我试图从.NET 控制台应用程序调用API端点。\n但是,它没有连接到服务器。谁能告诉我如何使用C#调用此API端点?

\n

.net c# api xml-rpc nuget-package

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

WordPress xmlrpc.php 301 永久移动

我使用他们的 Wordpress Droplet 安装程序在 Digital Ocean 上设置了一个站点。然后我安装了 Jetpack。

站点运行状况工具报告 Jetpack 未连接,我应该访问 Jetpack.com 调试器。我这样做了并将我的网站放入。我得到的错误:

XML-RPC is not responding correctly ( 200 )
Run Code Online (Sandbox Code Playgroud)

当访问该网址时,mywebaddress.com/xmlrpc.php我只是被重定向到该网站的主网址。

按照 Jetpack 的建议,我去了一个航站楼并运行

curl -A 'Jetpack by WordPress.com' -d '<methodCall><methodName>demo.sayHello</methodName></methodCall>' https://mywebaddress.com/xmlrpc.php
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我会得到以下结果。

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://mywebaddress.com/">here</a>.</p>
<hr>
<address>Apache/2.4.29 (Ubuntu) Server at mywebaddress.com Port 443</address>
</body></html>
Run Code Online (Sandbox Code Playgroud)

我已经检查了该.htaccess文件,其中仅包含注释。我已经检查过/etc/apache2/apache2.conf,发现那里没有重定向。

所以我的问题是,谁能告诉我导致 301 重定向的原因是什么?

wordpress xml-rpc jetpack digital-ocean

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

重新使用套接字时出现套接字错误

我正在用c ++编写一个XMLRPC客户端,用于与python XMLRPC服务器通信.

不幸的是,此时,python XMLRPC服务器只能在连接上发出一个请求,然后关闭,我发现这要归功于mhawke对我之前关于相关主题的查询的回复

因此,每次我想要发出XMLRPC请求时,我都必须创建一个到我的python服务器的新套接字连接.这意味着创建和删除许多套接字.一切正常,直到我接近~4000个请求.此时我收到套接字错误10048,正在使用套接字.

我试过睡觉线程让winsock修复它的文件描述符,这个技巧在我的python客户端有相同的问题时起作用,但无济于事.我尝试了以下内容

int err = setsockopt(s_,SOL_SOCKET,SO_REUSEADDR,(char*)TRUE,sizeof(BOOL));
Run Code Online (Sandbox Code Playgroud)

没有成功.

我正在使用winsock 2.0,所以WSADATA :: iMaxSockets不应该发挥作用,无论哪种方式,我检查并将其设置为0(我认为这意味着无穷大)

4000个请求似乎不是在应用程序运行期间发出的异常数量的请求.当服务器不断关闭并重新打开时,有没有办法在客户端使用SO_KEEPALIVE?

我完全错过了什么吗?

c++ python sockets xml-rpc

3
推荐指数
1
解决办法
9684
查看次数

XMLRPC Zend_Http_Client_Adapter_Exception',带有消息'10秒后读取超时

我在谷歌搜索过,但没有人发布解决方案,他们都说在配置中设置超时,但你怎么做?

如何从XMLRPC客户端或服务器重置/覆盖此设置?

这是我正在尝试的:

$server = new Zend_XmlRpc_Client('http://127.0.0.1/xmlrpc');
$client = $server->getProxy(); 

// Increasing the timeout
$client->setConfig(array('timeout'=>30));
Run Code Online (Sandbox Code Playgroud)

这是错误:

Fatal error: Uncaught exception 'Zend_XmlRpc_Client_FaultException' 
with message 'Method "setConfig" does not exist' 
in /usr/share/php/libzend-framework-php/Zend/XmlRpc/Client.php:370
Run Code Online (Sandbox Code Playgroud)

试图传递为arg:

$server = new Zend_XmlRpc_Client('http://127.0.0.1/xmlrpc', array('timeout'=>30));
Run Code Online (Sandbox Code Playgroud)

这是错误:

Catchable fatal error: Argument 2 passed to 
Zend_XmlRpc_Client::__construct() must be an 
instance of Zend_Http_Client
Run Code Online (Sandbox Code Playgroud)

找到解决方案,这里是:

$server = new Zend_XmlRpc_Client('http://127.0.0.1/xmlrpc');

// Get the HTTP Client used by the XMLRPC client
$http_client = $server->getHttpClient();

// Increasing the HTTP timeout
$http_client->setConfig(array('timeout'=>30));

$client = $server->getProxy(); 
Run Code Online (Sandbox Code Playgroud)

One Line也适用于我: …

php zend-framework config xml-rpc httpwebrequest

3
推荐指数
1
解决办法
1万
查看次数

我可以通过XMLRPC获取JIRA问题的子任务(如果是,如何执行此操作)?

我有一个xmlrpc接口正在运行,并且能够通过ID获取问题.例如,getIssue('PROJECT-701')返回的问题包含以下字段:

affectsVersions .. : [releaseDate,sequence,released,archived,...]
assignee ......... : '...'
components ....... : ...
created .......... : '2011-06-01 16:14:21.217'
customFieldValues  : ...
description ...... : '...'
fixVersions ...... : #()
id ............... : '28602'
key .............. : 'PROJECT-701'
project .......... : 'PROJECT'
reporter ......... : '...'
status ........... : '10032'
summary .......... : '...'
type ............. : '18'
updated .......... : '2011-06-07 12:49:51.363'
votes ............ : '0'
Run Code Online (Sandbox Code Playgroud)

现在我需要获取问题的子任务.从html浏览器界面,我知道存在ID为702,703,...的3个子任务.如果已知这些ID,我可以通过其问题ID获取子任务(作为问题)(即getIssue('PROJECT-703')给出正确的返回,其中子任务为issuetype.

但是,如何从问题中通过xmlrpc获取那些子任务?

我发现子任务中没有parent-issue-id,父类中也没有任何子任务id.这是XMLRPC接口中缺少的(我需要使用SOAP),还是有一个聪明的技巧(文本或其他特殊搜索)来获取信息?

如果可能的话,我希望继续使用XMLRPC而不是SOAP,但是在XMLRPC中无法确定它也是有用的,所以我不会浪费时间试图让不完整的xml-rpc接口工作. .

附加信息:我正在与JIRA 3.13.5交谈,并且getServerInfo请求返回:

baseUrl .... : ...
buildDate .. : …
Run Code Online (Sandbox Code Playgroud)

xml-rpc jira

3
推荐指数
1
解决办法
724
查看次数

有没有人将ODOO与Android集成在一起?

我目前正在为坚持使用Odoo for API的客户端开发一个android应用程序。我对此没有任何想法,即使在引用此链接后也没有得到它。他们提供了URL,数据库名称,用户名,以及密码。如果以前有人使用Android进行过Odoo的操作,您能提出建议吗?

android xml-rpc openerp odoo-mobile

3
推荐指数
1
解决办法
2519
查看次数