-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
修复tgph
- Loading branch information
Showing
6 changed files
with
89 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
addEventListener('fetch', event => { | ||
event.respondWith(handleTgphimgRequest(event.request)); | ||
}); | ||
|
||
async function handleTgphimgRequest(request) { | ||
// 确认请求方法为 POST 并且内容类型正确 | ||
if (request.method !== 'POST' || !request.headers.get('Content-Type').includes('multipart/form-data')) { | ||
return new Response('Invalid request', { status: 400 }); | ||
} | ||
|
||
// 解析表单数据 | ||
const formData = await request.formData(); | ||
const imageFile = formData.get('image'); // 假设字段名为 'image' | ||
if (!imageFile) return new Response('Image file not found', { status: 400 }); | ||
|
||
// 修改字段名为 'file',以适应 Telegra.ph 的接口 | ||
formData.append('file', imageFile); | ||
formData.delete('image'); // 删除原来的 'image' 字段 | ||
|
||
// Telegra.ph 的上传接口 | ||
const targetUrl = 'https://telegra.ph/upload?source=bugtracker'; | ||
|
||
// 发送修改后的表单数据 | ||
const response = await fetch(targetUrl, { | ||
method: 'POST', | ||
body: formData | ||
}); | ||
|
||
// 处理响应 | ||
if (response.ok) { | ||
const result = await response.json(); | ||
if (result && result.src) { | ||
// 提取 src 并拼接成完整的 URL | ||
const imageUrl = `https://telegra.ph${result.src.replace(/\\/g, '')}`; // 处理反斜杠 | ||
return new Response(imageUrl); | ||
} else { | ||
return new Response('Error: Unexpected response format', { status: 500 }); | ||
} | ||
} else { | ||
return new Response('Error: ' + await response.text(), { status: response.status }); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
import requests | ||
|
||
# 图片上传接口的URL(与JS代码中一致) | ||
upload_url = "https://telegra.ph/upload?source=bugtracker" | ||
|
||
# 要上传的图片路径 | ||
image_path = r"F:\Download\20240707-204330.jpg" | ||
|
||
# 读取图片文件 | ||
with open(image_path, 'rb') as image_file: | ||
# 使用 multipart/form-data 发送文件 | ||
files = { | ||
'file': image_file | ||
} | ||
|
||
# 向接口发送POST请求 | ||
response = requests.post(upload_url, files=files) | ||
|
||
# 打印响应状态码和内容 | ||
print(f"状态码: {response.status_code}") | ||
print(f"响应内容: {response.text}") | ||
|
||
# 检查响应 | ||
if response.status_code == 200: | ||
try: | ||
result = response.json() | ||
print(f"完整的JSON响应: {result}") | ||
if isinstance(result, list) and result and 'src' in result[0]: | ||
# 拼接图片的URL | ||
image_url = f"https://telegra.ph{result[0]['src']}" | ||
print(f"Image uploaded successfully: {image_url}") | ||
else: | ||
print(f"Unexpected response format: {response.text}") | ||
except ValueError: | ||
print(f"Failed to parse JSON response: {response.text}") | ||
else: | ||
print(f"Error uploading image: {response.status_code} - {response.text}") |