我已经使用http适配器并成功发送请求
但我不能用参数
来做我想发送参数cmd=login
如何将其放入parameter = []
?
var invocationData = {
adapter : 'RSSReader',
procedure : 'login',
parameters :[]
};
----------------------更新------------------------ -------
我尝试官方参数格式
var invocationData = {
adapter : 'HTTPAdapter',
procedure : 'login',
parameters :[{name : 'cmd', value : 'login'}]
};
但仍然没有发送?
<?xml version="1.0" encoding="UTF-8"?>
<displayName>HTTPAdapter</displayName>
<description>HTTPAdapter</description>
<connectivity>
<connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
<protocol>http</protocol>
<domain>my-ip-address</domain>
<port>80</port>
<!-- Following properties used by adapter's key manager for choosing specific certificate from key store
<sslCertificateAlias></sslCertificateAlias>
<sslCertificatePassword></sslCertificatePassword>
-->
</connectionPolicy>
<loadConstraints maxConcurrentConnectionsPerNode="2" />
</connectivity>
<procedure name="login"/>
这是适配器impl
function login() {
var input = {
method : 'post',
returnedContentType : 'json',
path : '/sp/api/'
};
return WL.Server.invokeHttp(input);}
答案 0 :(得分:0)
查看-impl.js文件中新创建的HTTP适配器中提供的示例 你可以这样做:
客户端JavaScript
var invocationData = {
adapter : 'myAdapter',
procedure : 'myProcedure',
parameters :['cmd=login']
};
...
...
适配器XML
...
...
<connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
<protocol>http</protocol>
<domain>www.example.com</domain>
<port>80</port>
</connectionPolicy>
适配器JavaScript
function myProcedure(myParameter) {
path = getPath(myParameter);
var input = {
method : 'get',
returnedContentType : 'xml',
path : path
};
return WL.Server.invokeHttp(input);
}
function getPath(myParameter) {
return ("?" + myParameter);
}