win10 uwp 设置 HttpClient 浏览器标识

最近在使用 smms 图床上传发现需要使用 UserAgent ,不然不会返回值。 所以我就询问了群里大神,他们告诉我需要设置 UserAgent ,本文就是告诉大家如何设置 HttpClient 的浏览器标识

如果使用 HttpClient 上传图片很简单,只需要创建 HttpMultipartFormDataContent ,里面写图片就可以上传。

设置的方法是HttpClient.DefaultRequestHeaders.UserAgent.ParseAdd,请看下面

  HttpClient webHttpClient =
                new [HttpClient();](HttpClient(); )
           var userAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36";
            webHttpClient.DefaultRequestHeaders.UserAgent.ParseAdd(userAgent);              

这里 userAgent 是从Chrome User Agents拿到,这样就可以了。

如果大家希望知道如何上传图片到 smms ,那么请使用下面代码

         string url = "https://sm.ms/api/upload";
            HttpClient webHttpClient =
                new [HttpClient();](HttpClient(); )
            HttpMultipartFormDataContent httpMultipartFormDataContent =
                new [HttpMultipartFormDataContent();](HttpMultipartFormDataContent(); )
            var fileContent = new HttpStreamContent(await File.OpenAsync(FileAccessMode.Read));
            fileContent.Headers.Add("Content-Type", "application/octet-stream");

            var userAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36";
            web[HttpClient.DefaultRequestHeaders.UserAgent.ParseAdd(userAgent);](HttpClient.DefaultRequestHeaders.UserAgent.ParseAdd(userAgent); )

            httpMultipartFormDataContent.Add(fileContent, "smfile", File.Name);
            var str = await web[HttpClient.PostAsync(new](HttpClient.PostAsync(new ) Uri(url), [httpMultipartFormDataContent);](httpMultipartFormDataContent); )
            //这里可以拿到返回的值 str.Content.ToString();

拿到的返回的值就可以转换拿到上传的图片,现在我做了图床,欢迎大家使用

如果需要设置 WebView 的标识,请看win10 uwp 如何让WebView标识win10手机


本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

WCF服务中操作FormsAuthentication的Cookie

在asp.net 应用程序和WCF服务之间共享FormsAuthentication,默认是不支持的,设置一下非常的简单,只需要两步就可以了: 1、在web.c...

2125
来自专栏菩提树下的杨过

winform运行时如何接受参数?(示例)

关键是在Main函数中处理,示例如下 using System; using System.Collections.Generic; using Syste...

2598
来自专栏微服务

C# 如何在Excel 动态生成PivotTable

Excel 中的透视表对于数据分析来说,非常的方便,而且很多业务人员对于Excel的操作也是非常熟悉的,因此用Excel作为分析数据的界面,不失为一种很好的选择...

30412
来自专栏木宛城主

SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用

由于项目的需要,登录SharePoint Application的用户将从一个统一平台中获取,而不是从Domain中获取,所以需要对SharePoint Ap...

2379
来自专栏菩提树下的杨过

"RDLC"报表-参数传递及主从报表

今天继续学习RDLC报表的“参数传递”及“主从报表” 一、先创建DataSet,如下图: ? 二、创建一个报表rptDEPT.rdlc,显示部门T_DPET的数...

2596
来自专栏码农分享

4.爬虫框架Clawler 爬取优酷电影名 分页+多线程

基于文章三我们实现了爬虫框架单页面应用程序的代码,那么在这一章节我们将使用框架进行内容分页和多线程的操作

1633
来自专栏木宛城主

SharePoint下用C#代码上传文档至文档库的子文件夹中

SharePoint的文档库非常方便,可以管理日常的文档,更强大的是可以创建文件夹来分类,通常在UI界面上是非常简单了,点击文件夹,Create a Fold...

2148
来自专栏听雨堂

ASP.NET TreeView相关问题

1、用代码在treeview web控件中,添加node的方法 表字段:编号,父编号,名称 数据: 1 0 中华人民共和国 2 1 湖南 3 1 湖北...

2107
来自专栏张善友的专栏

.NET程序优化(GCServer )

现在的服务器都是多个cpu,在.NET Framework 2.0在GC上有个新特性GCServer ,不知道有多少人用过这个东东。 关于GC可以看这篇文章GC...

2297
来自专栏菩提树下的杨过

Linq学习笔记(三)

下面的代码演示了如何利用Linq结合AspNetPager控件实现分页功能,以及如果利用Linq to Xml将当前页数据保存为Xml using (North...

19410

扫码关注云+社区

领取腾讯云代金券