zoukankan      html  css  js  c++  java
  • web api post注意事项

    黄色笑话

    近期一个项目需要使用到web api

     在使用过程中,对应get请求方式的使用基本没出什么问题

    但是对于post请求状况百出。

    今将遇到的的问题列出。以作借鉴。

     问题  -----post方式服务器端接收值为null

     1. 多个参数需要post过去

      ajax代码

           如下

    js代码

    function login() {
                        $.ajax({
                            url: "/api/Login",
                            type: "post",
                            dataType: "json",
                            data: { "name": document.getElementById("name").value, "Password": document.getElementById("pwd").value },
                            success: function (data) {
                                isLogin(data)
                                //createDb();
                            }
                        }).fail(
                        function (xhr, textStatus, err) {
                            alert('Error: ' + err);
                        });
    
                    }

    c#代码

      public UsersModel POST(string name, string Password)
            {
                //var a = ModelLogin.user(name.name, name.Password);
              
            }
    

      报错接收不到值

    原因 。 post方式只能接受一个参数而且必须放在

    FromBody 里用FromBody特性标识

    正确代码如下

            public UsersModel POST([FromBody]UsersModel name)
            {
                var a = ModelLogin.user(name.name, name.Password);
                return a;
            }
    

      需要将 

    UsersModel定义为类

    2.需要post list 对象
    这个直接写js正确代码

              $.ajax({
                        url: "/api/Exams",
                        type: "post",
                        dataType: "json",
                        contentType: 'application/json; charset=utf-8',
                        data: JSON.stringify(json),
    
                        success: function (data) {
                            alert(data);
                        }
                    }).fail(
              function (xhr, textStatus, err) {
                  alert('Error: ' + err);
              });
                  
    

      注意事项。

    data数据建议直接写js对象,对应c#建立的对象。

    喜欢拼接方式的key需要留空

    参考资料

    http://stackoverflow.com/questions/14779679/jquery-posts-null-instead-of-json-to-asp-net-web-api

    http://www.asp.net/web-api/overview/working-with-http/sending-html-form-data,-part-1#sending_simple_types

  • 相关阅读:
    php 时间问题
    php语言
    高级查询
    数据库的查询详情
    数据库的创建和增删改查,外键和主键的创建
    数据库
    js的基本语句和语法
    JS的脚本语言
    样式、格式布局
    表单的元素和样式表
  • 原文地址:https://www.cnblogs.com/zhang888/p/3606965.html
Copyright © 2011-2022 走看看