Coder Social home page Coder Social logo

cookiegettersharp's Introduction

#CookieGetterSharp ブラウザのCookieを.NETアプリで使えるようにするライブラリです。 http://com.nicovideo.jp/community/co235502 で配布されているCookieGetterSharpを元に、見つけた変な部分などを修正したものです。

現在は新しいライブラリとしてSnkLib.App.CookieGetter を作っています。互換性を気にする必要がない開発者などにはあちらをお勧めします。

ライセンス

以下のライセンス下にあります。

以下の著作物から派生させています。

##方針 現在、以下のブランチの方針下にあります。

  • base: 本家そのまま
  • master: 見つけた不具合の修正。
    (SnkLib.App.CookieGetterとの方針の違いは保守的で触らぬ神に祟りなしである事)

##各クラスの役割 以下の設計になっています。
利用者が使用する際には主にCookieGetterの静的メソッドからICookieGetterを取得して使う形になります。

  • static CookieGetter: 内部に保持するIBrowserManager群を管理し、ICookieGetterの生成を行う。
  • instance IBrowserManager: ブラウザ毎にCookieStatusとそれを保持するICookieGetter生成。
    (CookieGetter内部でICookieGetterの生成を行うファクトリクラスとして使われています)
  • instance ICookieGetter: 内部に保持するCookieStatusの情報を使ってCookieの取得を行う。
  • instance CookieStatus: 各ブラウザのCookieファイルの場所などを保持。
    (対象のICookieGetterが使用可能であるかやUI周りの機能などの怪しいものがあります)

##使い方

using Hal.CookieGetterSharp;

//なるべく独自にブラウザリストを生成せず、
//下のようにCreateInstancesメソッドから動的にリストを生成してください。
var importableBrowsers = CookieGetter.CreateInstances(true);
comboBox1.Items.AddRange(importableBrowsers);

//Cookieの取得は以下のようにします。
importableBrowsers[0].GetCookie(new Uri("http://live.nicovideo.jp/"), "user_session")
//あるいはこんな感じ。
importableBrowsers[0].GetCookieCollection(new Uri("http://live.nicovideo.jp/"))

//返り値を接続の都度、CookieContainerにセットしてください。
//Hal.CookieGetterSharp.BrowserTypeを設定の保存復元に使わないでください。

cookiegettersharp's People

Contributors

namoshika avatar

Stargazers

plusseed avatar  avatar 本田珠彩 avatar 録画先輩 avatar Koki Takahashi avatar

Watchers

James Cloos avatar  avatar NNC avatar

Forkers

colindcli

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.