GithubHelp home page GithubHelp logo

csharp-sdk's People

Contributors

abel-huang avatar bachue avatar bluntblade avatar clouddxy avatar exdevillee avatar fengrui358 avatar fengyhack avatar hadb avatar hantuo avatar hstarorg avatar icattlecoder avatar jemygraw avatar liangchaoboy avatar lidaobing avatar lihsai0 avatar longbai avatar longshanksmo avatar luckystarry avatar mei-zhao avatar nepliang avatar netdxy avatar okbang9 avatar pengweiqhca avatar shijiayun avatar why404 avatar xushiwei avatar xuzhaokui avatar xwen-winnie avatar zheniantoushipashi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

csharp-sdk's Issues

为HTTP请求增加"用户主动取消"的支持

建议在HttpManager中增加"用户主动取消"的支持。
一个可能的方式是,在HttpManager中新增CancelEventHandler
举个例子,在调用HttpManager的POST方法发送数据过程中,用户需要立即暂停或者中止当前的HTTP请求,这时可以发送CancelEvent让SDK主动中止当前POST行为(比如调用WebRequest.Abort方法)

有没有WinCE 6.0的解决方案

因为Json.net最新版本不太兼容wince 6.0, (实际上差不多兼容的要到3.5r8版本了)

所以SDK在Mac mac = new mac(ak,sk)的时候就报错了, 源码大概看了下,应该就是因为几个override的toString地方出的错.

暂时打算自己重写相关的JSON函数. 因为没有通读代码,所以想先问一下,SDK本身是否支持WINCE设备?

CE6仅有.net cf 2和.net cf 3.5.

时间不是很多,怕是只能做一些json的更改了,害怕到时候SDK本身也有什么问题.

该升级VS了

使用VS2017打开项目,自动项目下所有文件,不是之前的选择包含或者不包含部分文件了

增加批量对文件的生命周期进行更新的功能

当前更新文件生命周期的方法如下:

updateLifecycle(bucket, key, deleteAfterDays)

如果想批量更新多个文件的生命周期,只能在循环中去调用该方法(因为担心服务器响应的问题,还得采用 Thread.Sleep、异步多线程或 Parallel 并行的方式),这样做其实不太科学,本来一般来说,Update 操作都支持单个或多个的。

所以,建议是否可以考虑增加批量更新的功能?

比如:允许第二个参数是泛型列表 List<string>、数组 string[]、或者用特殊符号分隔多个 key 的字符串、……等方式。

PS. 我是从 segmentfault 过来的

关于nuget包的两点问题

关于nuget包的两点问题:

1、最新的6.1.7.1中,再次将dll忘记打包,之前一个6.1.7中是有dll的。希望负责打包的同事能够细心点,这个问题已经不是一次了。

2、6.1.7中虽然包含了dll,但是有一个很大的问题,关于依赖项Newtonsoft.Json.dll的问题,看来打包的同事根本没有理解nuget运作的方式,nuget打包的时候,可以设置依赖项,Newtonsoft.Json.dll本身在nuget也有包,应当设置其为依赖项,而无需将该dll打包进Qiniu的nuget包里,更重要的是,你们打包的Newtonsoft.Json.dll还不是最新版本的,会将项目中原有的Newtonsoft.Json.dll版本给强制变成低版本的。另外,目前打包的目录结构也不太科学,将Qiniu.4.0.dll放在NET20的目录下,NET20的目录中本应放Qiniu.2.0.dll,而Qiniu.4.0.dll应该放在NET40的目录下,这样才符合规范。

希望就以上两点问题,能够帮忙转达给负责nuget打包的同事,谢谢!

我对七牛寄予很大的期望,希望在nuget包方面能够更专业一点!谢谢!

新增UnitTest

新增单元测试(NUnit)
修复FormUploader中的UploadData和UploadStream的细节问题(问题描述:saveKey或者localFile包含中文时会出现错误)

下载下来的Packages包里面,有个nuget.exe文件

下载下来的Packages包里面,有个nuget.exe文件,导致我们在做ci发版的时候,用了此nuget.exe来查找程序集,但是很多程序集就查找不到,导致自动发版失败!请问这个文件作用是什么,可以删除?

mkzip 操作支持传入 alias 参数

多文件压缩方法 Qiniu.PFOP.Mkzip.doMkzip 目前不支持传入 alias:
https://github.com/qiniu/csharp-sdk/blob/develop/Qiniu/PFOP/Mkzip.cs#L30
这个方法可以接收一个 alias 数组,或是把 urls 换成 Dictionary.
目前想到两个方式:

  1. 接收一个 alias 数组

    public String doMkzip(String bucket, String existKey, String newFileName, String[] urls, string pipeline, String[] aliases = null)
    
  2. urls 类型改成 Dictionary, key 为 url, value 为 alias

    public String doMkzip(String bucket, String existKey, String newFileName, Dictionary<string,string> urls, string pipeline)`
    

目前主要使用的场景是文件存储路径包括分级文件夹,压缩时需要把路径展平,所以比较需要别名功能。

私有空间下载失败

环境:win10 .net v4.0 编译,运行在08R2上
版本:git clone代码,新鲜编译出来的
错误:生成的下载链接报错{"error":"download token auth failed"}
详细:签名出来的链接如下 http://img.cnhsjz.com/54596E4D2218.zip?e=1487917419&token=xxxxxxxxxx:URQMxUrMu_ykqUbLjxKH35-xqeA=
生成代码:如下图
image

提过工单,但是人家签名出来就可以,附上可用的url
http://xxx.cnhsjz.com/54596E4D2218.zip?e=1582519015&token=xxxxxxxxxxx:CCPWWXPKBA5Zv8JqsiQJpVpYugc=

单元测试 怎么没有了?

因为我在做 Qiniu.uwp,从7.2.x版本开始改用了HttpClient很好,但是为啥单元测试没有了,是还没来得及写吗?

没有单元测试改起来很不方便啊!

有一个建议,关于文件行尾

一般情况下,C#代码都是在Windows下开发的,文件行尾也应该是WIndows的行尾,但是RSClient这个文件,查了下历史,在今年2月18日,icattlecoder在support NET2.0, NET3.5, NET4.0这次提交中,将该文件的行尾全部改成了Unix的。这将对今后该文件的修改造成麻烦,比如之前williambao的关于添加Fetch功能的pull request,你们就说到“请您不要变动代码风格,这样review 会很麻烦。”以及“能否保留之前的格式?这样避免review出现差错,我们会非常感激”。而这其实是由于该文件之前的行尾是有问题的。所以希望你们能够重新审查下该文件,并对以后的操作进行规范,尽量使用Windows进行编辑。

无法上传文件

Hi:
7.2.x版本中使用FormUploader.UploadFileAsync()上传文件失败,错误信息:{"error":"file is not specified in multipart"}
但是FormUploader.UploadDataAsync()方法没有问题,望尽快修复。代码请见

还是之前的那个issue中提到的,希望尽快添加单元测试

另外很高兴看到了7.2.7添加了对uwp支持(我终于不用改了),但是还是有个小小的建议,能否把函数名改一改,已经改了一大部分了,加油!!!

关于Zone的配置一点建议

Zone的配置现在是单例的,这样限制太大了,希望后续能够针对Uploader提供Zone的配置,如果调用者有指定则采用指定Zone,没有采用全局配置。这样会比较灵活一些

Newtonsoft.JSON 被强制覆盖

Nuget上面的package,直接包含了一个Newtonsoft.JSON.dll,导致已经通过Nuget安装了Newtonsoft.JSON的引用会被覆盖(降级),产生版本冲突。第三方的dll只需要依赖就会自动安装的。

login error

Hello , when ı qiniu login with github ı get this error : [7336] 第三方账号认证失败

上传有无支持HTTPS打算

从目前的的代码来看,虽然服务器返回了上传的https接口,但是sdk中限制了,请问近期可有支持https上传的打算

代码写完后运行过没有????

你们的代码写完后运行过没有?SimpleUploader.uploadStream方法里构建报文格式都不正确,一调用就返回400错误。另外PutPolicy里Deadline是可以set的,但又同时提供了setExpires,你们打算让开发者怎么用?
建议你们写c#的时候用心一点,起码得使用c#的命名规范。

DeleteAfterDays参数问题

1.七牛C#SDK的DeleteAfterDays参数如何使用;

2.put = new PutPolicy(bucket, 3600); put.DeleteAfterDays = 1;

3.我设置了DeleteAfterDays = 1,按我理解通过这个Token上传的文件会在一天后自动删除,然而并没有;

4.我发现加不加DeleteAfterDays这个参数,对于生成的Token并没有什么变化。
使用的是最新的版本 直接从github下载的

建议开放 JSON 解析器

在七牛官方的 SDK 中的 JSON 解析上,选用了 Json.NET。

个人建议:将 JSON 的解析器开放出来,让开发者自行选择。

性能比 Json.NET 好的有几个,什么 JilServiceStack.Text、……
甚至,不用 JSON 格式,直接用 Google 的 ProtoBuf(官方版本C# 版本)或 Apache(Facebook)的 Thrift 进行,也可以。
因为毕竟这里只是一个传参,性能越快越好。

如果一定要用 JSON,建议把解析器开放出来。这样,在我们的项目中,不用单单为了使用七牛的 SDK 而去添加 Json.NET 的引用。

提交一个错误和一个建议

错误:VS中用Nuget获取到的是7.0.0版,且命名空间和项目中的7.2相差很大,建议在Nuget中更新一一上
建议:不管是项目中最新的 还是从VS中获取到的,都没有注释,虽然有网页版的注释,但是没有在代码中调用时就能看到的舒服呀,查看网页版的文档毕竟慢点,建议改进一下,添加注释的xml文件

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.