title author date CreateTime categories
win10 uwp smms图床
lindexi
2018-2-13 17:23:3 +0800
2018-2-13 17:23:3 +0800
Win10 UWP

本文,如何使用smms图床上传图片,用到win10 uwp post文件,因为我是渣渣,如果本文有错的,请和我说,在本文评论,或发给我邮箱,请不要发不良言论

找到一个很好的图床,sm.ms

可以简单使用post上传文件,我就做了一个工具,可以把图片上传,使用只需要

            //传入文件
smms.Model.Imageshack imageshack = new Imageshack()
{
File=File,
};
//上传完成事件,其中str为sm.ms返回,一般为json
//Reminder是例子,可以根据具体修改,注意要同步CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync
imageshack.OnUploadedEventHandler += (sender, str) => Reminder = str.Replace("\\/","/");
//上传
imageshack.UpLoad();

我将会把我做的发现的和大家说

进行HttpClient post参数错误

从“Windows.Web.Http.HttpStringContent”转换为“System.Net.Http.HttpContent”

原因

用了System.Net.Http.HttpClient其实HttpStringContent是可以在错误看到,不是System.Net.Http

方法

使用

           Windows.Web.Http.HttpClient webHttpClient=
new Windows.Web.Http.HttpClient(); Windows.Web.Http.HttpStringContent httpString=
new HttpStringContent("http://blog.csdn.net/lindexi_gd");
await webHttpClient.PostAsync(new Uri(url), httpString);

win10 uwp post 上传文件

我们可以使用HttpMultipartFormDataContent上传
其中我们需要从文件转流,打开StorageFile,把它转换HttpStreamContent

        var fileContent = new HttpStreamContent(await File.OpenAsync(FileAccessMode.Read));

然后我们要fileContent.Headers.Add("Content-Type", "application/octet-stream");

我们可以把httpMultipartFormDataContent加上fileContent,看到sm.ms

参数名称 类型 是否必须 描述
smfile File 表单名称。上传图片用到
ssl Bool 是否使用 https 输出,默认关闭
format String 输出的格式。可选值有 json、xml。默认为 json
domain Int 图片域名。可选

我们就修改Add(IHttpContent content, System.String name, System.String fileName); name "smfile"

httpMultipartFormDataContent.Add(fileContent, "smfile", File.Name);

使用await webHttpClient.PostAsync(new Uri(url), httpMultipartFormDataContent);

因为需要拿到上传图片

var str = await webHttpClient.PostAsync(new Uri(url), httpMultipartFormDataContent);
ResponseString = str.Content.ToString();
OnUploadedEventHandler?.Invoke(this,ResponseString);

所有代码

https://github.com/lindexi/Imageshack/tree/master/smms

2018-2-13-win10-uwp-smms图床的更多相关文章

  1. win10 uwp smms图床

    本文,如何使用smms图床上传图片,用到win10 uwp post文件,因为我是渣渣,如果本文有错的,请和我说,在本文评论,或发给我邮箱lindexi_gd@163.com,请不要发不良言论 找到一 ...

  2. 【广告】win10 uwp 水印图床 含代码

    本文主要是广告我的软件. 图床可以加速大家写博客上传图片的时间,通过简化我们的操作来得到加速. 在写博客的时候,我们发现,我们需要上传一张图片,需要先打开图片,然后选择本地图片,然后上传. 但是我经常 ...

  3. win10 uwp 九幽图床

    本文主要是图片加水印自动上传,代码已经上传github. 图片加水印,我的方法,简单,一个好的方法是毒逆天大神的图片加水印方法或http://daily.zhihu.com/story/8812028 ...

  4. 2019-9-2-win10-uwp-九幽图床

    title author date CreateTime categories win10 uwp 九幽图床 lindexi 2019-09-02 12:57:38 +0800 2018-2-13 1 ...

  5. Typora + picgo + sm.ms 图床设置笔记

    Typora + picgo + sm.ms 图床设置笔记 编辑于2020-03-26 本文部分内容在作者教程的基础上进行了二次编辑,如有重复,纯属必然 在此感谢大佬们的无私付出与分享 之前 用了 g ...

  6. VSCode + PicGo + Github + jsDelivr 搭建稳定快速高效图床

    VSCode + PicGo + Github + jsDelivr 搭建稳定快速高效图床 目录 前言 准备 配置 验证 前言 所谓图床,就是将图片储存到第三方静态资源库中,其返回给你一个 URL 进 ...

  7. 零成本搭建个人博客之图床和cdn加速

    本文属于零成本搭建个人博客指南系列 为什么要使用图床 博客文章中的图片资源文件一般采用本地相对/绝对路径引用,或者使用图床通过外链进行引用展示.本地引用的弊端我认为在于: 图片和博客放在同一个代码托管 ...

  8. win10 uwp 使用 asp dotnet core 做图床服务器客户端

    原文 win10 uwp 使用 asp dotnet core 做图床服务器客户端 本文告诉大家如何在 UWP 做客户端和 asp dotnet core 做服务器端来做一个图床工具   服务器端 从 ...

  9. win10 uwp MVVM 轻量框架

    如果在开发过程,遇到多个页面之间,需要传输信息,那么可能遇到设计的问题.如果因为一个页面内包含多个子页面和多个子页面之间的通信问题找不到一个好的解决方法,那么请看本文.如果因为ViewModel代码越 ...

随机推荐

  1. flex兼容问题

    display:flex作为C3的新属性,还是有的浏览器不支持的,那下面我们就来说一下他的兼容写法 .box{ display: -webkit-box; /* 老版本语法: Safari, iOS, ...

  2. jsoncpp 能做什么

    jsoncpp能做什么1)跨平台跨语言动态信息数据交换.2)作为格式化配置文件使用3)对应数据结构数据类型做序列化和反序列化4)value::toStyledString 格式化json串输出 一.w ...

  3. 微信小程序支付 java

    原文:https://blog.csdn.net/zhourenfei17/article/details/77765585 话不多说,直接开撸. 支付流程步骤: 1)首先调用wx.login方法获取 ...

  4. 转载自:StringUtils的常见方法

    转载自:https://blog.csdn.net/simple_smile_sun/article/details/51819158 注:运用StringUtils需要导入相关jar文件,commo ...

  5. Visual Studio2015 community 许可证到期问题

    申请微软账户直接登录可以继续使用.

  6. shouyexinlianjie

    http://7xj7xs.com1.z0.glb.clouddn.com/trail_1.mp4

  7. 基于GTID模式MySQL主从复制

    基于GTID模式MySQL主从复制 GTID复制原理:基于GTID的复制是MySQL 5.6后新增的复制方式GTID (global transaction identifier) 即全局事务ID, ...

  8. 图论之点双&边双

    说人话: 边双联通: a到b的路径上无必经边 点双联通: a到b的路径上除了a,b没有必经点 tarjan求点双联通: 代码(补图) 割点: 桥: 求点双:强制dfs时不越过割点,即可求出一个块 求边 ...

  9. Delphi XE2 之 FireMonkey 入门(22) - 数据绑定: BindingSource、BindingName、FindBinding()、Binding[]

    在窗体上添加 TrackBar1.Edit1.Label1, 然后设置属性(可在设计时): procedure TForm1.FormCreate(Sender: TObject); begin   ...

  10. redis集群安装多端口多实例部署

    目标(本文达成的结果,配对关系可能会变): 先在131上进行操作 1.下载redis http://download.redis.io/releases/redis-5.0.2.tar.gz 2.解压 ...