击水黑龙
击水黑龙
  • 发布:2015-03-06 15:32
  • 更新:2015-03-09 13:49
  • 阅读:12196

新手!请问MUI或者HBuilder如何调用WebService,请给个代码

分类:MUI

新手!请问MUI或者HBuilder如何调用WebService,请给个代码

2015-03-06 15:32 负责人:无 分享
已邀请:
DCloud_UNI_FXY

DCloud_UNI_FXY

mui提供的有ajax,支持请求json,xml格式。参考hello-mui中的ajax.html

击水黑龙

击水黑龙 (作者)

好的!正在学习!

击水黑龙

击水黑龙 (作者)

请看以下这个调用webservice的方法哪儿出问题了。这是参考example中,ajax的文件改的:
<script>
(function($) {
mui.init();
var methodEl = document.getElementById("method");
var dataTypeEl = document.getElementById("dataType");
var respnoseEl = document.getElementById("response");
//成功响应的回调函数
var success = function(response) {
var dataType = dataTypeEl.value;
if (dataType === 'json') {
response = JSON.stringify(response);
} else if (dataType === 'xml') {
response = new XMLSerializer().serializeToString(response).replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
respnoseEl.innerHTML = response;
};
var ajax = function() {
//利用RunJS的Echo Ajax功能测试
var url = 'http://www.8175shu.com/jishui/WebService.asmx/HelloWorld';
//请求方式,默认为Get;
var type = 'post';//methodEl.value;
//预期服务器范围的数据类型
var dataType = 'json';//dataTypeEl.value;
//发送数据
var data = {
//a: "mui"
};
//url = url + (dataType === 'html' ? 'text' : dataType);
respnoseEl.innerHTML = url;//'正在请求中...';
if (type === 'get') {
if (dataType === 'json') {
$.getJSON(url, data, success);
} else {
$.get(url, data, success, dataType);
}
} else if (type === 'post') {
$.post(url, data, success, dataType);
}
};
//发送请求按钮的点击事件
document.getElementById("confirm").addEventListener('tap', function() {
ajax();
});
//点击描述中链接时,打开对应网页介绍;
$('body').on('tap', 'a', function(e) {
var href = this.getAttribute('href');
if (href) {
if (window.plus) {
plus.runtime.openURL(href);
} else {
location.href = href;
}
}
});
})(mui);
</script>

击水黑龙

击水黑龙 (作者)

我直接把type赋值未post,dataType赋值为json。但是运行没什么反应!没有结果返回!
纯新手,谢谢支持!
var type = 'post';//methodEl.value;
var dataType = 'json';//dataTypeEl.value;

击水黑龙

击水黑龙 (作者)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "JiuGongJiShui")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。
[System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService {

public WebService () {  

    //如果使用设计的组件,请取消注释以下行   
    //InitializeComponent();   
}  

[WebMethod]  
[System.Web.Script.Services.ScriptMethod(ResponseFormat = System.Web.Script.Services.ResponseFormat.Json)]  
public string HelloWorld() {  
    return "Hello World";  
}  

[WebMethod]  
[System.Web.Script.Services.ScriptMethod(ResponseFormat = System.Web.Script.Services.ResponseFormat.Json)]  
public string test(string a)  
{  
    if (a=="ok")  
       return "ok,it's all right!";  
    else  
        return "Hello World,你输入的是:"+a;  
}  

}

击水黑龙

击水黑龙 (作者)

是不是mui调用ws的时候,还需要设置:contentType

Ga

Ga - 前后端各种语言全沾工程师

你是什么协议的webservice?
如果是基于http的soap协议的话直接用jquery soap调用就行了,基于http的webservice说白了也就是个http请求而已

DCloud_UNI_FXY

DCloud_UNI_FXY

添加下error回调。然后打印下错误信息

击水黑龙

击水黑龙 (作者)

不用了!我不用web服务了。!改用ashx了。我要的功能实现了!大家不用费心了。
也是通过咱们框架的ajax文件实现的!

  • Fun

    可以分享一下!您是如何连接到ashx的么??

    2015-05-25 15:38

该问题目前已经被锁定, 无法添加新回复