Início
Conheça mais
Enviar pesquisa
Carregar
Entrar
Cadastre-se
Anúncio
PythonでWebDAVサーバーを作ろう②
Denunciar
iPride Co., Ltd.
Seguir
iPride Co., Ltd.
22 de Mar de 2023
•
0 gostou
0 gostaram
×
Seja o primeiro a gostar disto
mostrar mais
•
57 visualizações
visualizações
×
Vistos totais
0
No Slideshare
0
De incorporações
0
Número de incorporações
0
Check these out next
Mavenへのはじめの一歩
祐理 大野
第3回集合知プログラミング勉強会 #TokyoCI グループを見つけ出す
Atsushi KOMIYA
Clouderaの品質保証・CDHのテスト工程について by Andrew bayer
Cloudera Japan
このべん第二回 ~「できない子ほどかわいくしたい!ConoHa補完計画」勉強会
ConoHa, GMO INTERNET
Rawlerフレームワーク(全体)
Takaichi Ito
Whats new Apache CloudStack
Kimihiko Kitase
Clojureの発表など
Kikuta Go
20050917
小野 修司
1
de
21
Top clipped slide
PythonでWebDAVサーバーを作ろう②
22 de Mar de 2023
•
0 gostou
0 gostaram
×
Seja o primeiro a gostar disto
mostrar mais
•
57 visualizações
visualizações
×
Vistos totais
0
No Slideshare
0
De incorporações
0
Número de incorporações
0
Baixar agora
Baixar para ler offline
Denunciar
Tecnologia
2023/03/17の勉強会で発表されたものです。
iPride Co., Ltd.
Seguir
iPride Co., Ltd.
Anúncio
Anúncio
Anúncio
Recomendados
20120117 13 meister-elasti_cache-public
Amazon Web Services Japan
2.5K visualizações
•
51 slides
[AWS Summit 2012] クラウドデザインパターン#8 CDP アンチパターン編
Amazon Web Services Japan
5.2K visualizações
•
56 slides
Amazon ElastiCache - AWSマイスターシリーズ
SORACOM, INC
7.7K visualizações
•
57 slides
AWSクラウドデザインパターン(CDP) - 概要編 -
SORACOM, INC
13.7K visualizações
•
34 slides
AWSクラウドデザインパターン(CDP) - Eコマース編 -
SORACOM, INC
7.5K visualizações
•
48 slides
Rails初心者レッスン lesson1 3rd edition
Goh Matsumoto
1.3K visualizações
•
25 slides
Mais conteúdo relacionado
Similar a PythonでWebDAVサーバーを作ろう②
(20)
Mavenへのはじめの一歩
祐理 大野
•
3.6K visualizações
第3回集合知プログラミング勉強会 #TokyoCI グループを見つけ出す
Atsushi KOMIYA
•
4.6K visualizações
Clouderaの品質保証・CDHのテスト工程について by Andrew bayer
Cloudera Japan
•
4K visualizações
このべん第二回 ~「できない子ほどかわいくしたい!ConoHa補完計画」勉強会
ConoHa, GMO INTERNET
•
5.5K visualizações
Rawlerフレームワーク(全体)
Takaichi Ito
•
1.6K visualizações
Whats new Apache CloudStack
Kimihiko Kitase
•
2.2K visualizações
Clojureの発表など
Kikuta Go
•
1.6K visualizações
20050917
小野 修司
•
439 visualizações
Docker, Kubernetes and OpenShift v3
Emma Haruka Iwao
•
5K visualizações
Isomorphic web development with scala and scala.js
TanUkkii
•
23.4K visualizações
Webフレームワーク
MintJams Inc.
•
244 visualizações
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)
Amazon Web Services Japan
•
3.1K visualizações
.NETからActive Directoryデータにアクセス ~プリンタ情報の取得と表示~
Michio Koyama
•
1.4K visualizações
Crawler Commons
chibochibo
•
635 visualizações
Couchbase meetup20140925
ktoda
•
849 visualizações
Version管理 1
hakoika-itwg
•
1.4K visualizações
[AWS Summit 2012] クラウドデザインパターン#6 CDP クラウド監視編
Amazon Web Services Japan
•
5.8K visualizações
[AWS Summit 2012] クラウドデザインパターン#2 CDP 画像・動画配信編
Amazon Web Services Japan
•
3.6K visualizações
PHP開発者のためのNoSQL入門
じゅん なかざ
•
6.3K visualizações
ElastiCacheを利用する上でキャッシュをどのように有効に使うべきか
Amazon Web Services Japan
•
17.8K visualizações
Mais de iPride Co., Ltd.
(20)
OIDC(OpenID Connect)について解説①
iPride Co., Ltd.
•
28 visualizações
SpringBootにおけるテンプレートエンジンの活用
iPride Co., Ltd.
•
31 visualizações
Java研修
iPride Co., Ltd.
•
14 visualizações
SpringBootの研修本で学んだこと
iPride Co., Ltd.
•
22 visualizações
画像生成AI stable diffusionの紹介2
iPride Co., Ltd.
•
35 visualizações
ビジネスマナー研修で学んだこと ~ 第一印象とコミュニケーション ~
iPride Co., Ltd.
•
26 visualizações
MySQL研修で学んだこと
iPride Co., Ltd.
•
27 visualizações
画像生成AI stable diffusionの紹介
iPride Co., Ltd.
•
108 visualizações
DrupalでBDDテストを 実施してみる②
iPride Co., Ltd.
•
45 visualizações
Pythonでキャッシュを活用する話①
iPride Co., Ltd.
•
159 visualizações
SQLの内部結合と外部結合について
iPride Co., Ltd.
•
67 visualizações
ChatAPI.pptx
iPride Co., Ltd.
•
61 visualizações
いろいろな言語で見る「0埋め」の実装方法
iPride Co., Ltd.
•
40 visualizações
SQL文について
iPride Co., Ltd.
•
36 visualizações
Drupal Consoleに特化したモデルを作成する
iPride Co., Ltd.
•
34 visualizações
OpenAI FineTuning を試してみる
iPride Co., Ltd.
•
1.1K visualizações
fetch APIを安全に使う方法をおさらいしてみよう
iPride Co., Ltd.
•
50 visualizações
SCPコマンドについて
iPride Co., Ltd.
•
58 visualizações
Docker入門
iPride Co., Ltd.
•
60 visualizações
自己分析
iPride Co., Ltd.
•
27 visualizações
Anúncio
Último
(20)
SoftwareControl.pdf
ssusercd9928
•
6 visualizações
☀️【杜兰大学毕业证成绩单留学生首选】
2125nuh
•
2 visualizações
①【戴尔豪斯大学毕业证文凭学位证书|工艺完美复刻】
love445ds
•
2 visualizações
①【麦吉尔大学毕业证文凭学位证书|工艺完美复刻】
love445ds
•
2 visualizações
ペンタエリスリトール市場.pdf
HinaMiyazu
•
3 visualizações
☀️【麦吉尔大学毕业证成绩单留学生首选】
15sad
•
3 visualizações
モバイル・クラウド・コンピューティング-データを如何に格納し、組み合わせ、情報として引き出すか
Masahiko Funaki
•
2 visualizações
初学者のためのプロンプトエンジニアリング実践.pptx
Akifumi Niida
•
352 visualizações
《杨百翰大学毕业证|学位证书校内仿真版本》
d520dasw12
•
2 visualizações
【2023年5月】平成生まれのためのUNIX&IT歴史講座
法林浩之
•
16 visualizações
統計学の攻略_正規分布ファミリーの全体像.pdf
akipii Oga
•
111 visualizações
統計学の攻略_統計的仮説検定の9パターン.pdf
akipii Oga
•
112 visualizações
20230516 @Mix Leap Hirohiko_Suwa
Masashi Nakagawa
•
82 visualizações
Omnis
DaisukeFujita10
•
14 visualizações
PCベース制御による集中制御.pdf
ssusercd9928
•
19 visualizações
【DL輪読会】Flow Matching for Generative Modeling
Deep Learning JP
•
711 visualizações
SoftwareControl.pdf
ssusercd9928
•
15 visualizações
量子論.pdf
hiro150493
•
0 visão
ChatGPT + LlamaIndex 0 .6 による チャットボット の実装
Takanari Tokuwa
•
26 visualizações
Forguncy8 製品概要 202305.pptx
フォーガンシー
•
7 visualizações
PythonでWebDAVサーバーを作ろう②
PythonでWebDAVサーバーを 作ろう② 執筆者:トビウオ
目次 • 前回のあらすじ • ライブラリの仕組みを整理 •
Providerを自作しよう • Collectionを自作しよう • NonCollectionを自作しよう • まとめ
前回のあらすじ • 次のようなサンプルコードを動かした
前回のあらすじ • 実行結果のプレビュー (Webブラウザで確認) 認証情報、レルム、 アクセス権限 名前、種類、 大きさ、最終更新 今見ているパス
前回のあらすじ • 実行結果のプレビュー (Finderで確認)
ライブラリの仕組みを整理 • 3つのclassがあり、それを継承して使う クラス名 役割 DAVProvider パスに対応するCollectionか NonCollectionを返す DAVCollection
Directoryに相当する DAVNonCollection Fileに相当する まとめてResource と呼ぶ
Providerを自作しよう • DAVProviderを継承して作成する • wsgidavライブラリに添付されているもの •
FileSystemProvider • MySQLBrowserProvider • …etc. • 自作するもの (以降解説)
Providerを自作しよう • もっとも簡単な実装はこんな感じ • どのパスでも404
Not Foundになる
• get_resource_inst(self, path,
environ) • pathはURL、environは環境変数 • DAVCollectionかDAVNonCollectionかNoneを返 す Providerを自作しよう
Collectionを自作しよう • もっとも簡単な実装はこんな感じ • 「中身が空なDirectory」に相当する
• 先ほどのDirectoryを返すように、Providerを修正 するとこんな感じ Collectionを自作しよう
Collectionを自作しよう • get_member_names(self) • そのCollectionに連なるResourceの「名前」の一覧を 返す •
get_member(self, name) • 「名前」(name)に対応するResourceかNoneを返す
Collectionを自作しよう • CollectionがCollectionを返す例 Resourceの名前の一覧を返す 名前に対応したResourceを返す
Collectionを自作しよう • デフォルトのコンストラクタは__init__(path, environ) pathとenvironは必須。 pathは「/」から始まる文字列で、 Resourceの名前に相当する
Collectionを自作しよう • Providerも修正する必要があることに注意 「/{なんとか}/」を認識している
Collectionを自作しよう • Webブラウザで見るとこんな感じ get_member_names()で返した「名前」がデ フォルト値。個別のCollectionに対し、 get_display_name()を設定して変更もできる 個別のCollectionに対し、引数pathで指定し たもの。ファイラーはこちらをディレクト リ名として認識する
NonCollectionを自作しよう • 「中身が空なファイル」に 相当する実装をするとこん な感じ • 最低限、 get_content_lengthと get_contentは設定しないと いけない模様
NonCollectionを自作しよう • 開かせるために、幾つか 修正を加える • pathの扱いは、 Collectionのときと 同じ
NonCollectionを自作しよう • Webブラウザで見るとこんな感じ
NonCollectionを自作しよう • 例えば、引数に応じた文字列を返す NonCollectionを実装するとこんな感じ
まとめ • Provider、Collection、NonCollectionを自作し 、WebDAVサーバーとして読み込ませること ができた • 説明しなかったが、最終更新日時やファイルタ イプなど、細かな設定を行うことも可能
Anúncio