小程序利用WebService跟asp.net交互过程发现的问题并处理

最近在研究一个项目,用到asp.net跟小程序交互,简单的说就是小程序端利用wx.request发起请求。获取asp.net 响应回来的数据。但经常会报错。点击下图的测试按钮


出现如下错误:

百思不得其解,试了若干方法,都不行。
因为是第一次接触webservice,不是很精通,后来发现必须如下图所示点击asp.net中的运行才行


asp.net端点击运行代码状态如下

然后再点击小程序端的测试按钮,提示一切ok

显示数据可以正常获取了展开如下:

正确获取了asp.net 响应过来的数据,在上图中的data 中。贴出代码,供大家测试

小程序端代码如下:
wxml端:

复制代码
<view class="container">
    <text class="user-motto">{{num}}</text>
    <button bindtap="requestWebService">测试</button>
</view>

小程序js端代码如下:

复制代码
  /**
   * 页面的初始数据
   */
  data: {
    num:[]
  },
  //测试WebService
  requestWebService:function(){
    var that=this//注意这里必须缓存,不然无法在回调中
    wx.request({
      url: 'https://localhost:44346/test.asmx/Name',
      data: {
        a:1,
        b:2
      },
      method: 'POST', 
      success: function(res){
   
        console.log(res)
        that.setData({motto:res.data.d})//这里是that不是this
      },
      fail: function() {
       
      },
      complete: function() {
       
      }
    })
  },

asp.net端代码如下:

复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

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

        [WebMethod]
        public int[] Name(int a, int b)
        {
            return new int[] { a, b };
        }
    }
}

注意 [System.Web.Script.Services.ScriptService],不要注释。否则也会出错

相关推荐
untE EADO12 小时前
SpringBoot:几种常用的接口日期格式化方法
java·spring boot·后端
青槿吖13 小时前
第一篇:Redis集群从入门到踩坑:3主3从保姆级搭建+核心原理一次性讲透|面试必看
前端·redis·后端·面试·职场和发展·bootstrap·html
与硝酸13 小时前
从 Claude Code 源码看 Agent 系统设计:主流框架都在解决的问题与各自的解法
人工智能·后端
文心快码BaiduComate13 小时前
Comate AI IDE三大能力升级:支持语音输入& AI可操作浏览器 & Figma设计与代码双向转换
前端·后端·程序员
想你的液宝13 小时前
Spring Boot 中基于 AOP 的 Controller 统一日志打印方案
java·后端
天草二十六_简村人13 小时前
阿里云SLS采集jvm日志(上)
java·运维·数据库·后端·阿里云·容器·云计算
码事漫谈13 小时前
Skills 到底怎么快速入门?
后端
Soofjan14 小时前
Go select 源码笔记:selectgo、scase 与 pollorder / lockorder
后端
Soofjan14 小时前
Go select 关键字:多路 channel、空 select 与实现要点
后端
羊小猪~~14 小时前
Redis学习笔记(数据类型、持久化、事件、管道、发布订阅等)
开发语言·数据库·c++·redis·后端·学习·缓存