ly0303521

修改设置,点击"下载"按钮直接下载

... ... @@ -122,9 +122,7 @@ const DetailModal: React.FC<DetailModalProps> = ({ image, onClose, onEdit, onGen
)}
<a
href={image.url}
target="_blank"
rel="noopener noreferrer"
href={`${image.url}?download=true`}
download={`z-${isVideo ? 'video' : 'image'}-${image.id}.${isVideo ? 'mp4' : 'png'}`}
className="flex items-center justify-center w-full py-3 bg-black dark:bg-white text-white dark:text-black rounded-xl font-medium hover:opacity-90 transition-opacity gap-2"
>
... ...
... ... @@ -86,7 +86,9 @@ const ImageCard: React.FC<ImageCardProps> = ({ image, onClick, onLike, currentUs
onClick={(e) => {
e.stopPropagation();
const link = document.createElement('a');
link.href = image.url;
// Append ?download=true to force server to send attachment header
link.href = `${image.url}?download=true`;
// Filename is optional here as server header takes precedence, but good for fallback
link.download = `z-${isVideo ? 'video' : 'image'}-${image.id}.${isVideo ? 'mp4' : 'png'}`;
document.body.appendChild(link);
link.click();
... ...