post

C#模拟POST上传文件帮助类(支持https、http)

廉价感情. 提交于 2020-02-25 19:19:10
public static int PostFile(string getUrl, CookieContainer cookieContainer, HttpHeader header, string postdata, byte[] postdatabyte, Stream sm) { Stream fileStream; if (sm != null) { fileStream = sm; } else { fileStream = new MemoryStream(postdatabyte); } ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls;//https形式需要添加 int returnValue = 0; fileStream.Position = 0; var r = new BinaryReader(fileStream); string strBoundary = "--"+ DateTime.Now.Ticks.ToString("x"); byte[] boundaryBytes = Encoding.ASCII.GetBytes("\r\n--" + strBoundary + "--\r\n"); //请求头部信息

CI访问表单数据的方法

人走茶凉 提交于 2020-02-25 18:57:17
主要有下面几个方法: $this->input-> post () $this->input->get() $this->input->cookie() $this->input->server() 1. $this->input-> post () 第一个参数为你想要获取的 POST 数据名: $this -> input -> post ( 'some_data' ); 如果获取的数据不存在,该方法返回 NULL 。 第二个参数可选,用于决定是否使用 XSS 过滤器对数据进行过滤。 要使用过滤器,可以将第二个参数设置为 TRUE 如果不带任何参数该方法将返回 POST 中的所有元素。 如果希望返回 POST 所有元素并将它们通过 XSS 过滤器进行过滤, 可以将第一个参数设为 NULL ,第二个参数设为 TRUE $this -> input -> post ( NULL , TRUE ); // returns all POST items with XSS filter $this -> input -> post ( NULL , FALSE ); // returns all POST items without XSS filter 如果要返回 POST 中的多个元素,将所有需要的键值作为数组传给它: $this -> input -> post ( array (

NSNotificationCenter

前提是你 提交于 2020-02-25 18:17:16
一个NSNotificationCenter对象(通知中心)提供了在程序中广播消息的机制,它实质上就是一个通知分发表。这个分发表负责维护为各个通知注册的观察者,并在通知到达时,去查找相应的观察者,将通知转发给他们进行处理。 本文主要了整理了一下NSNotificationCenter的使用及需要注意的一些问题,并提出了一些未解决的问题,希望能在此得到解答。 获取通知中心 每个程序都会有一个默认的通知中心。为此,NSNotificationCenter提供了一个类方法来获取这个通知中心: + (NSNotificationCenter *)defaultCenter 获取了这个默认的通知中心对象后,我们就可以使用它来处理通知相关的操作了,包括注册观察者,移除观察者、发送通知等。 通常如果不是出于必要,我们一般都使用这个默认的通知中心,而不自己创建维护一个通知中心。 添加观察者 如果想让对象监听某个通知,则需要在通知中心中将这个对象注册为通知的观察者。早先,NSNotificationCenter提供了以下方法来添加观察者: - (void)addObserver:(id)notificationObserver selector:(SEL)notificationSelector name:(NSString *)notificationName object:(id

GET POST的使用

折月煮酒 提交于 2020-02-25 12:25:57
ASP取得表格输入数据的方法 :GET POST 一.get:用户端将数据加到URL后,格式为”?字段1=输入数据1&字段2=输入数据2&...", 再将其送到服务器。 如: action为 www.abc.com, 字段Name输入数据为jack,字段age的数据为15,则用get方法为 http://www.abc.com?Name=jack&Age=15 二.post:用户端用http信息数据传送到服务器 ASP中: get:使用“输入数据= Request.QueryString("字段名")",将附加于URL的数据取出。 post:使用“输入数据=Request.Forml"(字段名")",读取HTTP信息数据字段。 * Request.QueryString范例 如:〈A hery="aspform.asp?Name=jack&Age=15"> 按此〈/A〉〈p〉 Name:<%=request.QueryString("Name")%) Age:<%=request.QeueryString("Age")%) * get 范例 ·aspturm.asp: <form action="asp1b.asp" method="get"> 姓名: <input type=text name="input1" value="Your name"> <p> 特征: <select

Post png image to pngcrush with Ruby

﹥>﹥吖頭↗ 提交于 2020-02-25 08:20:25
问题 In ruby, I want to get the same result than the code below but without using curl: curl_output = `curl -X POST -s --form "input=@#{png_image_file};type=image/png" http://pngcrush.com/crush > #{compressed_png_file}` I tried this: #!/usr/bin/env ruby require "net/http" require "uri" # Image to crush png_image_path = "./media/images/foo.png" # Crush with http://pngcrush.com/ png_compress_uri = URI.parse("http://pngcrush.com/crush") png_image_data = File.read(png_image_path) req = Net::HTTP.new

web框架

五迷三道 提交于 2020-02-25 01:50:46
http协议 HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。 HTTP特点 1、简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。 2、灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记 3.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 4.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。 缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 HTTP请求协议 请求协议遵照以下格式: 请求首行; // 请求方式 请求路径 协议和版本,例如:GET /index.html HTTP/1.1 请求头信息; // 请求头名称:请求头内容,即为key:value格式,例如:Host:localhost 空行; // 用来与请求体分隔开 请求体。 // GET没有请求体,只有POST有请求体。 get请求 GET /562f25980001b1b106000338.jpg HTTP/1.1 Host img

Vue中的8种组件通信方式

我的未来我决定 提交于 2020-02-24 18:50:07
  Vue是数据驱动视图更新的框架,所以对于vue来说组件间的数据通信非常重要。   常见使用场景可以分为三类: 父子组件通信: props / $emit $parent / $children provide / inject ref $attrs / $listeners 兄弟组件通信: eventBus Vuex 跨级通信: eventBus Vuex provide / inject $attrs / $listeners 一、props / $emit (最常用的组建通信方式)    父组件通过props的方式向子组件传递数据,而通过$emit 子组件可以向父组件通信。   1. 父组件向子组件传值(props) 传入一个静态的值   <blog-post title="My journey with Vue"></blog-post> 传入一个动态的值, 任何 类型的值都可以传给一个 prop。   <blog-post v-bind:title="post.title"></blog-post>   <blog-post v-bind:likes="42"></blog-post>   <blog-post v-bind:is-published="false"></blog-post>   <blog-post v-bind:comment-ids="[234,

dapper使用

眉间皱痕 提交于 2020-02-24 16:50:12
dapper使用 访问量不大的项目我都是用EF写数据库操作,因为EF除了速度上慢以外,但开发效率极快,省略了很多sql写法,并能很方便的调用外键、集合等信息,用EF写项目最爽的事。不过有些项目网站要考虑运行速度,这时不得不用其它的ORM框架,我常用dapper,因为它效果快,而且写sql非常灵活,接下来面写一些方法看看dapper的使用 1、连接语句 var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["SqlDiagnosticsDb"].ConnectionString); 使用dapper不需要考虑conn是否连接,在执行dapper时自行判断 open状态,如果没有打开它会自己打开。 2、insert string query = "INSERT INTO Book(Name)VALUES(@name)"; conn.Execute(query, book); book类中有name属性,就可以这样方便去写,当然也可以写成 string query = "INSERT INTO Book(Name)VALUES(@name)"; conn.Execute(query, new{@name=book.name}); 3、update string query = "UPDATE Book

Dapper记录

无人久伴 提交于 2020-02-24 16:48:53
List Support Dapper允许您传入IEnumerable<int>,并将自动参数化查询 例如: connection.Query<int>("select * from (select 1 as Id union all select 2 union all select 3) as X where Id in @Ids", new { Ids = new int[] { 1, 2, 3 } }); 将转化为: select * from (select 1 as Id union all select 2 union all select 3) as X where Id in (@Ids1, @Ids2, @Ids3)" // @Ids1 = 1 , @Ids2 = 2 , @Ids2 = 3 Multi Mapping Dapper允许您将一行映射到多个对象。如果您想避免无关的查询和急切的加载关联,这是一个关键特性。 例如: 两个类 Post和User class Post { public int Id { get; set; } public string Title { get; set; } public string Content { get; set; } public User Owner { get; set; } } class User {

Google App Script Web App GET and POST request blocked by CORS policy

淺唱寂寞╮ 提交于 2020-02-24 11:25:08
问题 I created a Google Web script app that adds a user's name and email to a spreadsheet. This works fine when accessing the web page from directly in the browser, but both GET and POST requests from a website returns the error "Access to fetch at 'https://script.google.com/macros/s/AKfycbxkG5hM6MMswwHdzWSJKwutMYsOZRT3zjC7jFti0sDvJ47bWB4BTsHPhvbyEVGSsSc5/exec' from origin '' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque