JumpKick.HttpLib/Provider/MultipartBodyProvider.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。


namespace JumpKick.HttpLib.Provider
{
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Reflection;

    public class MultipartBodyProvider : DefaultBodyProvider
    {
        private string boundary;
        

        private Stream contentstream;
        private StreamWriter writer;
        private IList<NamedFileStream> files;
        private object parameters;
        public Action<long, long?> OnProgressChangeCallback = (a, b) => { };
        public Action<long> OnCompletedCallback = (a) => { };


        public MultipartBodyProvider()
        {
            boundary = RandomString(8);
            contentstream = new MemoryStream();
            writer = new StreamWriter(contentstream);
            files = new List<NamedFileStream>();
        }

        public void AddFile(NamedFileStream file)
        {
            files.Add(file);
        }

        public override string GetContentType()
        {
            return string.Format("multipart/form-data; boundary={0}", boundary);
        }

        public string GetBoundary()
        {
            return boundary;
        }

        public void SetParameters(object parameters)
        {
            this.parameters = parameters;
        }


        public override Stream GetBody()
        {
            writer.Write("\n");

            /*
             * Serialize parameters in multipart manner
             */
            if (parameters != null)
            {

后面还有 102 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。