gpt4 book ai didi

coldfusion - fileExists() 与 CFHTTP 检查远程文件

转载 作者:行者123 更新时间:2023-12-04 01:57:37 25 4
gpt4 key购买 nike

fileExists 远程文件检查是否使用 cfhttp 头?

在检查远程文件时,我担心 fileExists over CFHTTP 的速度

<cfset imgExist = FileExists('https://qph.fs.quoracdn.net/main-qimg-e8b07145ae25974d4902168818241326.webp') >
<cfdump var="#imgExist#">
-- Returns Yes --

FileExists 函数是否使用 CFHTTP 头?
<cfhttp method="head" url="someimage" resolveurl="no" throwonerror="no" timeout="2" />

在检查远程文件是否存在时,FileExists 相对于 CFHTTP 的优势是什么?

在服务器负载方面,FileExists 是否也比 CFHTTP 更好?

最佳答案

Is the FileExists function uses CFHTTP head?



是的, fileExists使用 Commons Virtual File System ,转换为对 Web 资源的 HTTP HEAD 请求。

What is the advantage of FileExists over CFHTTP when checking if the remote file exists?



从理论上讲,使用 cfhttp 时,实现可以很容易地适应 Web 资源的特定规则。将是一个具体的实现。但是,您可以只包装 cfhttp自己轻松调整,而不是依赖最新版本的 Jakarta VFS。

Also is FileExists better than CFHTTP in terms of server load?



不,现在这两个调用都会导致 HTTP HEAD 请求。我无法衡量它们之间的实际性能差异。

正如评论中提到的,您可能不应该使用 fileExists , 因为:
  • Adobe 没有记录检查 Web 资源,这更像是一个很好的副作用,因为下面的实现使用了 VFS。
  • 您对实现没有任何控制权。示例:如果您需要添加额外的 header (因为您正在检查的网络服务器要求您这样做),那么您将不走运 fileExists .

  • 所以我的建议是:编写一个使用 cfhttp method="HEAD" 的简洁函数并在需要时调整功能。不要相信未记录的功能,尤其是在涉及 CF 时。 😜

    关于coldfusion - fileExists() 与 CFHTTP 检查远程文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54581822/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com