Rumah >pembangunan bahagian belakang >tutorial php >如何获取登录时的验证码图片?
登录时会有个验证码,看了下代码,其 src 指向一个 PHP 地址(可能不是 PHP 地址,这样 src="/login/verificationCode?0.8308222951445625"
),单独打开这个地址,出现的是乱码,求问如何能把这个图片抠下来?为下一步识别验证码做准备。有没有研究过相关的朋友,谢谢!
登录时会有个验证码,看了下代码,其 src 指向一个 PHP 地址(可能不是 PHP 地址,这样 src="/login/verificationCode?0.8308222951445625"
),单独打开这个地址,出现的是乱码,求问如何能把这个图片抠下来?为下一步识别验证码做准备。有没有研究过相关的朋友,谢谢!
这不是乱码,只是jpg、gif、png的 二进制流而已,具体是jpeg还是png,需要看这个二进制流的前几位,上回有会JPEG之类的标记
这个二进制流 保存成 1.jpg
就可以看到结果了
或者请求的时候 将content-type 设置为 image/jpeg 这样请求的就应该可以直接看到了
建议题主看看TP验证码生成 就明白其中的奥义了
验证码
同遇到这样的问题
给http请求上加上头来让服务端知道它是个图片就可以了,你说的乱码是二进制流,复制到.txt然后保存成.jpg就可以打开看到了
一般验证码图片的生成都是没有做存储或者缓存的。
重新访问该链接只会生成新的图片,所以要把图片先存储起来,然后再做调用。
之前在项目中,我们就是通过js调用接口的方式,将验证码图片的二进制流资源以base64_encode加密传给客户端。
你可以参考下实现方法吧
楼主解决这个问题了吗?我也正遇到这个问题。