Ionic2 Post请求后台服务数据

1,添加Ionic providers            --命令    ionic g provider baseservice


-----baseservice.ts  添加代码

下面这部分摘抄别人的,但是忘记是哪个网站了。。。。。

   //Common post method  post请求参数序列化
    postSerialization(data, urlmethod) {
        let headers = new Headers({
            'Content-Type': 'application/x-www-form-urlencoded'
        });
        let options = new RequestOptions({
            headers: headers
        });
        return new Promise((resolve, reject) => {
            this.http.post('' + this.httpurl + '' + urlmethod + '', this.toQueryString(data), options)
                .map(res => res.json())
                .subscribe(data => resolve(data), err => reject(err))
        })
    }
    //post请求参数序列化
    postSerializationSubscribe(data, urlmethod) {
        let headers = new Headers({
            'Content-Type': 'application/x-www-form-urlencoded'
        });
        let options = new RequestOptions({
            headers: headers
        });
        return this.http.post('' + this.httpurl + '' + urlmethod + '', this.toQueryString(data), options)
            .map(res => res.json());
    }
    //参数序列化
    private toQueryString(obj) {
        let result = [];
        for (let key in obj) {
            key = encodeURIComponent(key);
            let values = obj[key];
            if (values && values.constructor == Array) {
                let queryValues = [];
                for (let i = 0, len = values.length, value; i < len; i++) {
                    value = values[i];
                    queryValues.push(this.toQueryPair(key, value));
                }
                result = result.concat(queryValues);
            } else {
                result.push(this.toQueryPair(key, values));
            }
        }
        return result.join('&');
    }
    //参数序列化
    private toQueryPair(key, value) {
        if (typeof value == 'undefined') {
            return key;
        }
        return key + '=' + encodeURIComponent(value === null ? '' : String(value));
    }


--------register.ts   页面调用baseservice.ts  post 请求 和传入webapi方法


  Register()
  {
    let self = this;
    let data = { "UserAd": this.userad, "PassWord": this.password};
    let urlmethod = '/UserInfo/Add';
            this.serviceinfo.postSerialization(data, urlmethod).then(rackallinfo=>{
                let rackinfoarr=[];
                for(let a in rackallinfo[0])
                {
                    rackinfoarr.push(rackallinfo[0][a]);
                }
             if(rackinfoarr.length==0)
             {let alert = this.alertCtrl.create({
                title: 'Note!',
                subTitle: ' Code not exists.',
                buttons: ['OK']
            });
            alert.present();
        }
        else
        {this.goToRackDetail();console.log('aaaa')}
        })
  }
  RegisterNew(){
    let self = this;
    let data = { "UserAd": this.userad, "PassWord": this.password};
    let urlmethod = '/UserInfo/Add';
        self.infoservice.postSerializationSubscribe(data, urlmethod).subscribe(data => {
            this.arrayObj = new Array();
            for (let i = 0; i < data.length; i++) {
                this.arrayObj.push(data[i])
                this.formCode = this.arrayObj[0].UserAd;
                this.formNo = this.arrayObj[0].password;
                console.log(this.formCode);
                console.log(this.formNo);
                //this.sanitizeHtml = this.sanitizer.bypassSecurityTrustHtml("<br>" +this.arrayObj[0]. +"<br><br><br>")    --html内容
            }

  }
  }


---后台接收参数    aspx.cs

[AllowAnonymous]
        [HttpPost]
        public User Login(JObject jdata)
        {
            User user = new DAL.Model.User();
            string adaccount = jdata["UserAd"].ToString();
            string password = jdata["PassWord"].ToString();
            //var adaccount = jsadaccount.ToObject<();

             user = new DAL.BLL.UserRegister().Register(adaccount,password);
            //var user = _userList.FirstOrDefault(users => users.UserID == id);
            //if (user == null)
            //{
            //    throw new HttpResponseException(HttpStatusCode.NotFound);
            //}
            return user;
        }



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值