Coder Social home page Coder Social logo

imgursharp's Introduction

ImgurSharp

โš  FYI: I've decided to stop maintaining this library. Feel free to fork and create a better one!

โš  FYI: The package that is on NuGet is NOT something that I've published.

C# net-standard wrapper for Imgur anonymous api

  • Upload, edit and delete images
  • Create, edit and delete albums

You'll need to register for an ApplicationId / Client-Id. Imgur api

Create

using ImgurSharp;

using(Imgur imgur = new Imgur("YOUR APPLICATION ID")) {
	// upload/update/delete your files here!
}

Image

Upload from url

Store DeleteHash from creation if you want to edit/delete image

Image image = await imgur.UploadImageAnonymous("https://www.link.to.your.image.on.some.url.com/image.png", "name", "title", "description");

Upload from Stream

Store DeleteHash from creation if you want to edit/delete image

using(MemoryStream ms = new MemoryStream(File.ReadAllBytes("someLocalFile.jpg"))) {
	Image image = await imgur.UploadImageAnonymous(ms, "name", "title", "description");
}

Update

bool updated = await imgur.UpdateImageAnonymous(image.Deletehash, "updated title", "a new description");

Delete

bool deleted = await imgur.DeleteImageAnonymous(image.Deletehash);

Get

Will NOT return deleteHash

Image image = await imgur.GetImage("imageId");

Album

Create

Store DeleteHash from creation if you want to edit/delete album

CreateAlbum createdAlbum = await imgur.CreateAlbumAnonymous(new string[] { "imageDeleteHash#1","imageDeleteHash#2" }, "album title", "album description", AlbumPrivacy.Public, AlbumLayout.Horizontal, "imageId#1");

Update

bool result = await imgur.UpdateAlbumAnonymous(createdAlbum.DeleteHash, new string[] { "imageId#1","imageId#2" }, "updated album title", "update album description", AlbumPrivacy.Hidden, AlbumLayout.Blog, "imageId#2");

Delete

 bool deleteAlbum = await imgur.DeleteAlbumAnonymous(album.DeleteHash);

Add images

 bool addImagesResult = await imgur.AddImagesToAlbumAnonymous(album.DeleteHash, new string[] { "imageId#1","imageId#2" });

Remove images

bool removeImagesResult = await imgur.RemoveImagesFromAlbumAnonymous(album.DeleteHash, new string[] {  "imageId#1" });

Get Album

Will NOT return deleteHash

Album album = await imgur.GetAlbum("albumId");

Exception

If Imgur returned a response code that was not 2XX then a ResponseException will be thrown.

License

The MIT License (MIT)

Copyright (c) [2015] [Andreas Lindgren]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

imgursharp's People

Contributors

auo avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar

imgursharp's Issues

Upload GIF File

When i try to upload i GIF File i get following exception:
System.UriFormatException: Invalid URI: The uri string is too long

Error: We don't support that file type!

I try the memorystream example with png, jpg and mp4, but i always get the ResponseException: "Error: We don't support that file type!"

No clue what i am doing wrong ^^

System.Exception on upload image

A System.Exception exception is thrown when I call imgur.UploadImageAnonymous
Here is error message:
System.Exception: ' Error: Invalid URL ()
Request: /3/upload
Verb: POST '

Here is my code:

Imgur imgur = new Imgur("-----------");
private void fooBar(Stream stream)
{
    FileStream fs = File.OpenRead("test.bmp");
    
    Stream stream = Stream.Null;
    fs.CopyTo(stream);
    
    new Task(async () =>
    {
        ImgurImage img = await imgur.UploadImageAnonymous(stream, "Example", "Example Image", "Example Description"); // This is the line the exception throws
    }).Start();
}

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.