在使用手机向webapi发送照片请求的时候遇到一个问题,关于base64位字符串码无法识别,提交的表单是这样的:

<form id="form1" method="post" action="http://localhost:10322/food/Buy?date='2015-2-12'&content=balabala内容">
<div>
<input type="text" name="PhotoInfo" value="base位码"/>
<input type="submit" value="提交" />
</div>
</form>

由于PhotoInfo特别长,不能放在url拼接,会报异常,所以放在form里面提交,但是api端却捕捉不到,产生url异常.

解决方案:在对应的buy方法的PhotoInfo参数前面加上[Frombody]标记

public ResponseMessage Buy(string date,string content,[FromBody] string PhotoInfo)

加上这个标记后,webapi端能找到了,但是又有问题出现了,photoInfo明明有值,传进来却是null,查了一下,默认string类型不会传值,必须用自定义类型,好吧,定义个自定义类型

public class Photo {
public string Extension { get; set; }
public string PhotoImage { get; set; }
}

然后在参数使用的地方改成

public ResponseMessage Buy(string date,string content,[FromBody] Photo PhotoInfo)

取值的地时候要用PhotoInfo.PhotoImage,这时候就有值了,另外,在传base64位码的时候,前面的data:image/gif;base64, 这个不能加上,加上识别不了。

html复杂url提交的更多相关文章

  1. Spring MVC url提交参数和获取参数

    [转载:http://blog.csdn.net/mahoking] 普通URL提交参数         该格式url为:url.do?param1=mahc&param2=8888.00 需 ...

  2. url提交参数类

    url提交参数类 type /// <summary> /// 准备url /// </summary> TynUrl = class private FUrl, FComma ...

  3. php对于url提交数据的获取办法

    $url = Request::getUri();//获取当前的url $arr = parse_url($url); //$arr_query = convertUrlQuery($arr['que ...

  4. post提交的数据有哪几种编码格式?能否通过URL参数获取用户账户密码

    这里是修真院前端小课堂,每篇分享文从 [背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方面深度解析前端知识/技能,本篇分享的是: [post提交的 ...

  5. jquery实现ajax提交表单信息

    最近在思考优化项目,想自己扩展一个jquery自动获取表单中的数据进行ajax提交.本人没有完整性学习jquery,基本上是现学现找,有点困难. 主要是扩展和拼接json转对象 很简单,附上代码: ; ...

  6. [JBoss] - 解决URI提交时乱码问题

    JBoss 7 AS解决url提交数据乱码的问题: 打开jboss-as-7.1.1.Final\standalone\configuration\standalone.xml文件,在<exte ...

  7. 诅咒JavaScript之:Jquery ajax提交内容异常

    jquery ajax 通过url提交内容,在服务器端获取却出现很奇怪的值,代码如下: ajaxurl = "aspx/logTable.ashx?action=load&Every ...

  8. angularJs实现信息数据提交功能

    如下简单的报名提交的实现 1.数据绑定 2.$http.post()提交数据 一.数据绑定 <!--报名部分--> <div class="attend_box" ...

  9. Asp.net的post提交方式

    //建立WebRequest对象,url目标地址HttpWebRequest req =(HttpWebRequest)WebRequest.Create(url); //将LoginInfo转换为b ...

随机推荐

  1. vertex shader must minimally write all four components of POSITION

    Though the POSITION semantic must be written out by the vertex shader, it cannot be read in by the p ...

  2. Linux python安装

    Linux 安装 Python3.5   1. 准备 操作系统:Red Hat Enterprise Linux Server release 6.5 (Santiago) Python 安装包:Py ...

  3. java继承如何理解呢??

    总结:我把他弄的无语了.他是诺基亚公司的软件开发师,大学毕业就可以进那么好的公司.实力 package com.bc; //普通类 class yt { public void price() { S ...

  4. XXXAction-validation.xml文件中报错:Referenced file Contains errors

    我们需要引用与验证器配置相关的dtd文件,这个文件可以在xwork-core-2.3.1.2.jar下找到(xwork-validator-1.0.3.dtd) 网上有很多处理办法,如下所示: 1.直 ...

  5. Ubuntu中vi命令的使用

    指今说明: 进入 vi 的命令vi filename: 打开或新建文件,并将光标置于第一行首 vi +n filename: 打开文件,并将光标置于第n行首 vi + filename: 打开文件,并 ...

  6. ORA-00904: 标识符无效——解决方案

    转自:https://blog.csdn.net/jajavaja/article/details/49122639 建表时列名用双引号引着(用Navicat工具建表默认是加上双引号的),java连接 ...

  7. Delphi BLE 控件

    TBluetoothLEDevice LDevice.Address;//"00:11:22:DD:EE:FF". LDevice.DeviceName//Mi LDevice.I ...

  8. clang: error: linker command failed with exit code 1 (use -v to see invocation) 无法定位的问题

    编译出现错误:linker command failed with exit code 1 找到Build settings->Linking->Other Linker Flags,将此 ...

  9. hadoop报错java.io.IOException: Incorrect configuration: namenode address dfs.namenode.servicerpc-address or dfs.namenode.rpc-address is not configured

    不多说,直接上干货! 问题详情 问题排查 spark@master:~/app/hadoop$ sbin/start-all.sh This script is Deprecated. Instead ...

  10. Markdown简要规则

    We believe that writing is about content, about what you want to say – not about fancy formatting. 我 ...