去除上传oss的步骤
This commit is contained in:
@@ -8,7 +8,6 @@ use EasyWeChat\Factory;
|
||||
// use EasyWeChat\Kernel\Exceptions\DecryptException;
|
||||
use EasyWeChat\Kernel\Http\StreamResponse;
|
||||
use think\Db;
|
||||
use app\common\util\AliyunOSS;
|
||||
class PosterWeChatMiniProgram extends Controller
|
||||
{
|
||||
public function index()
|
||||
@@ -26,9 +25,7 @@ class PosterWeChatMiniProgram extends Controller
|
||||
// 生成小程序码,存客宝-操盘手调用
|
||||
public function generateMiniProgramCodeWithScene($taskId = '') {
|
||||
|
||||
if(empty($taskId)) {
|
||||
$taskId = request()->param('id');
|
||||
}
|
||||
$taskId = request()->param('id');
|
||||
|
||||
$app = Factory::miniProgram(self::MINI_PROGRAM_CONFIG);
|
||||
|
||||
@@ -47,59 +44,19 @@ class PosterWeChatMiniProgram extends Controller
|
||||
|
||||
// 保存小程序码到文件
|
||||
if ($response instanceof StreamResponse) {
|
||||
$savePath = ROOT_PATH . '/runtime/img';
|
||||
// 确保目录存在
|
||||
if (!is_dir($savePath)) {
|
||||
mkdir($savePath, 0755, true);
|
||||
}
|
||||
$filename = $response->saveAs($savePath, 'appcode_'.$taskId.'.png');
|
||||
|
||||
// 上传到OSS
|
||||
if ($filename) {
|
||||
$ossUrl = $this->uploadToOSS($filename);
|
||||
// 删除本地文件
|
||||
if (file_exists($filename)) {
|
||||
unlink($filename);
|
||||
}
|
||||
// 如果OSS上传成功,返回OSS URL;否则返回本地文件路径
|
||||
return $ossUrl ?: $filename;
|
||||
}
|
||||
// $filename = 'minicode_' . $taskId . '.png';
|
||||
// $response->saveAs('path/to/codes', $filename);
|
||||
// return 'path/to/codes/' . $filename;
|
||||
|
||||
$img = $response->getBody()->getContents();//获取图片二进制流
|
||||
$img_base64 = 'data:image/png;base64,' .base64_encode($img);//转化base64
|
||||
return $img_base64;
|
||||
}
|
||||
|
||||
// return false;
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传文件到OSS
|
||||
* @param string $filePath 本地文件路径
|
||||
* @return string|false 成功返回OSS URL,失败返回false
|
||||
*/
|
||||
private function uploadToOSS($filePath)
|
||||
{
|
||||
try {
|
||||
// 生成OSS对象名称
|
||||
$objectName = AliyunOSS::generateObjectName('appcode_' . time() . '.png');
|
||||
|
||||
// 上传到OSS
|
||||
$result = AliyunOSS::uploadFile($filePath, $objectName);
|
||||
|
||||
if ($result['success']) {
|
||||
// 返回完整的OSS URL
|
||||
return AliyunOSS::ossUrl . '/' . $objectName;
|
||||
} else {
|
||||
// 记录错误日志
|
||||
\think\facade\Log::error('OSS上传失败: ' . $result['error'] . ' 文件: ' . $filePath);
|
||||
return false;
|
||||
}
|
||||
} catch (\Exception $e) {
|
||||
// 记录错误日志
|
||||
\think\facade\Log::error('OSS上传异常: ' . $e->getMessage() . ' 文件: ' . $filePath);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// getPhoneNumber
|
||||
public function getPhoneNumber() {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user