Spaces:
Running
Running
import fetch from 'node-fetch'; | |
/** | |
* 测试前端导出功能复刻API | |
*/ | |
async function testFrontendExportReplication() { | |
const baseUrl = 'http://localhost:3001'; | |
// 测试用的认证token(需要替换为实际的token) | |
const authToken = 'your-auth-token-here'; | |
// 测试数据 | |
const testData = { | |
pptId: 'test-ppt-id', | |
slideIndex: 0, | |
format: 'jpeg', | |
quality: 0.9, | |
width: 1600, | |
height: 900, | |
ignoreWebfont: true, | |
backgroundColor: '#ffffff', | |
pixelRatio: 1 | |
}; | |
console.log('🧪 Testing Frontend Export Replication API...'); | |
try { | |
// 测试单个幻灯片导出 | |
console.log('\n1. Testing single slide export...'); | |
const singleResponse = await fetch(`${baseUrl}/api/export/frontend-replicate-single`, { | |
method: 'POST', | |
headers: { | |
'Content-Type': 'application/json', | |
'Authorization': `Bearer ${authToken}` | |
}, | |
body: JSON.stringify(testData) | |
}); | |
if (singleResponse.ok) { | |
const singleResult = await singleResponse.json(); | |
console.log('✅ Single export success:', { | |
linkId: singleResult.linkId, | |
imageUrl: singleResult.imageUrl, | |
downloadUrl: singleResult.downloadUrl | |
}); | |
} else { | |
const error = await singleResponse.text(); | |
console.log('❌ Single export failed:', singleResponse.status, error); | |
} | |
// 测试批量导出 | |
console.log('\n2. Testing batch export...'); | |
const batchData = { | |
...testData, | |
rangeType: 'all' | |
}; | |
const batchResponse = await fetch(`${baseUrl}/api/export/frontend-replicate-batch`, { | |
method: 'POST', | |
headers: { | |
'Content-Type': 'application/json', | |
'Authorization': `Bearer ${authToken}` | |
}, | |
body: JSON.stringify(batchData) | |
}); | |
if (batchResponse.ok) { | |
const batchResult = await batchResponse.json(); | |
console.log('✅ Batch export success:', { | |
totalSlides: batchResult.totalSlides, | |
successCount: batchResult.successCount, | |
errorCount: batchResult.errorCount, | |
resultsCount: batchResult.results?.length || 0 | |
}); | |
} else { | |
const error = await batchResponse.text(); | |
console.log('❌ Batch export failed:', batchResponse.status, error); | |
} | |
} catch (error) { | |
console.error('🚨 Test failed with error:', error.message); | |
} | |
} | |
// 运行测试 | |
if (import.meta.url === `file://${process.argv[1]}`) { | |
testFrontendExportReplication(); | |
} | |
export { testFrontendExportReplication }; |