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. 有了二叉查找树、平衡树(AVL)为啥还需要红黑树?

    序言 二叉查找树的缺点 平衡二叉树 虽然平衡树解决了二叉查找树退化为近似链表的缺点,能够把查找时间控制在 O(logn),不过却不是最佳的,因为平衡树要求每个节点的左子树和右子树的高度差至多等于1,这 ...

  2. PHP超大文件上传与下载

    前段时间做视频上传业务,通过网页上传视频到服务器. 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制:2,请求时间过长, ...

  3. AI移动,缓慢转身设置(针对AI Character)

    AICharacter自身: Use Controller Rotation Yaw设为False Auto Possess AI 设为 Placed in World or Spawned Char ...

  4. C. Anna, Svyatoslav and Maps

    C. Anna, Svyatoslav and Maps 给定一个有向图,给定一条有向路径,求一条顶点最少的路径,使得给定的路径是它的最短路 folyd预处理出任意两点间的最短路,然后判断是否可以缩点 ...

  5. 嵌入QQ聊天

    <a href="http://wpa.qq.com/msgrd?V=1&Uin=1178321443&Site=http://www.nanfangjiadian.c ...

  6. 基于python实现自动化办公学习笔记一

    1.CSV(1)写csv文件 import csv def writecsv(path,data): with open(path, "w") as f: writer = csv ...

  7. 《SQL Server 2012 T-SQL基础》读书笔记 - 8.数据修改

    Chapter 8 Data Modification SQL Server 2008开始,支持一个语句中插入多行: INSERT INTO dbo.Orders (orderid, orderdat ...

  8. LuceneNET全文检索封装

    一.源码特点       1.  Lucene.net是Lucene的.net移植版本,是一个开源的全文检索引擎开发包,即它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎 ...

  9. Laravel 的Artisan 命令学习

    Laravel 的Artisan 命令学习 Artisan 是 Laravel 提供的 CLI(命令行接口),它提供了非常多实用的命令来帮助我们开发 Laravel 应用.前面我们已使用过 Artis ...

  10. leetcode-mid-array-3 Longest Substring Without Repeating Characters

    mycode  99.21% class Solution(object): def lengthOfLongestSubstring(self, s): """ :ty ...