Implem / Implem.Pleasanter

Pleasanter is a no-code/low-code development platform that runs on .NET. You can quickly create business applications with simple operations.
https://pleasanter.org
GNU Affero General Public License v3.0
515 stars 82 forks source link

保存先をファイルにするとサイト画像がリンク切れ #355

Closed sts00455 closed 1 year ago

sts00455 commented 3 years ago

BinaryStorage.jsonを後述のように変更(=保存先をDBからファイルへ変更)すると、サイト画像(アイコン)で設定した画像がアップロードは正常終了するのに、フォルダメニュー上のアイコンではリンク切れ(イメージリンク切れのxイメージ)となり表示されない。添付ファイルは問題なく利用できており、フォルダ「SiteImage」「Images」「Attachments」はIIS_USRSへ権限付与済み。

【変更前】  ”Provider": ”Rds”,  "Path": null,  ↓ 【変更後】  ”Provider": ”Local”,  "Path": "C:\",

pmc-ko commented 3 years ago

設定ファイルがJSONなので、\はエスケープが必要です。エスケープ(\\\)はされていますか?

sts00455 commented 3 years ago

※個人情報保護のため、宛先を非表示(BCC)にて送信しています。

すみません。投稿時の入力ミスで "Path": "C:\",ではなく "Path": "C:\",と設定し、エスケープしております。

添付ファイルは問題なく指定パスCに保存できています。 アイコン画像だけが、リンク切れになります。

From: kazuca @. Sent: Wednesday, April 28, 2021 4:56 PM To: Implem/Implem.Pleasanter @.> Cc: 小林 良史 @.>; Author @.> Subject: Re: [Implem/Implem.Pleasanter] 保存先をファイルにするとサイト画像がリンク切れ (#355)

設定ファイルがJSONなので、\はエスケープが必要です。エスケープ(\→)はされていますか? — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

pmc-ko commented 3 years ago

もし可能なら、バージョンと使用されているブラウザを教えていただけませんでしょうか? 当方の環境もLocalなのですが、同じ現象が再現できません。

当方の環境は、0.50.246 + (Chrome/Edge/Firefox)です。

pmc-ko commented 3 years ago

現象再現できました。IEだと0.50.246でもダメですね。 画像をダウンロードしてみたところCMYKのビットマップとなっていました。IEの場合ビットマップはRGBでないとデコード出来ないので、そこが原因のようです。この部分は不具合のfix待ちになるかと思います。

pmc-ko commented 3 years ago

先ほどの件、訂正です。CMYKのビットマップではなく、PNGのようですね。バイナリエディタで開いて確認すべきでした。

BinaryModel.BinaryModel(Context, long, string)の戻り値で、ContentTypeを返してるのですが、Localの場合はString.Emptyが返されて、それを受け取っている部分の判定でString.EmptyやNULLの場合にContentTypeとしてimage/bmpが指定されています。 最終的にそのContentTypeが画像のバイナリとセットで、ブラウザに渡されているのですが、ContentTypeと実際の画像のContentTypeが不一致のため、IEではデコードエラーが出て表示されないようです。

添付ファイルなどで問題ないがないのは、アップロード時に取得したContentTypeを使っているからのようです。

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] commented 1 year ago

This issue was closed because it has been stalled for 7 days with no activity.