使用restful webservice的worklight适配器

时间:2015-06-26 08:11:32

标签: ibm-mobilefirst worklight-adapters

我正在使用worklight适配器来实现restful web服务。但我无法得到任何成功的回应。

这是我的适配器:

    function getTest(username,password) {
        var path = "http://test.mybluemix.net";
        var request = 'username='+username+'&'+'password='+password;
        var input = {
                method : 'get',
                returnedContentType : 'plain',
                path : path,
                headers: {
                    "Host":"http://test.mybluemix.net"
                },
                body : {
                    contentType: 'text/xml; charset=UTF-8',
                    content: request.toString()
                }
            };
            return WL.Server.invokeHttp(input);
    }

当我调用适配器时,我得到了回复..

  

响应标头是连接关闭,X-Backside-Transport失败

通常我必须在网址上方点击其工作正常http://test.mybluemix.net/?username=sssss&password=dffa

response :   {"ID":"5","USERNAME":"sassad","PASSWORD":"adsa","ROLE":"abc","PHONENUMBER":"12345678"}

1 个答案:

答案 0 :(得分:0)

有些事情对我来说是错误的。

  1. path变量不应指向主机名。它应该是之后的部分:

    在适配器XML文件中,您可以定义协议,主机和端口值 然后提供路径,例如:http://myhost:8080/THE-PATH。在这种情况下,我认为您不需要它,因为根据您的工作URL示例,没有实际路径 - 只有参数,请求。

  2. 我不确定您需要host标头。先试试吧......

  3. 试试这个。希望这会起作用。

    function getTest(username,password) {
            var request = 'username='+username+'&'+'password='+password;
            var input = {
                    method : 'get',
                    returnedContentType : 'plain',
                    path : path,
                    //headers: {
                    //   "Host":"http://test.mybluemix.net"
                    // },
                    body : {
                        contentType: 'text/xml; charset=UTF-8',
                        content: request.toString()
                    }
                };
                return WL.Server.invokeHttp(input);
        }