OBSUploadFile.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. const config = {
  2. AccessKeyId: 'IVW21DTGIIUBBAGXKK0Y', //AK
  3. SecretKey: 'Y01nEQNcLOATMw7uJwrk3yOdQZ2fqLhSnXcOKVDE', //SK
  4. EndPoint: 'https://horastar.obs.cn-east-3.myhuaweicloud.com', //上传文件的路径
  5. };
  6. // const config ={
  7. // AccessKeyId: 'OMQVTLJWELHSZGCEQCZQ', //AK
  8. // SecretKey: 'MIfn0HRfmYKyQLSP7kemUCoj3ks20fhOB0IuksEp', //SK
  9. // EndPoint: 'https://goin.obs.cn-north-4.myhuaweicloud.com', //上传文件的路径
  10. // };
  11. const getPolicyEncode = require('./getPolicy.js');
  12. const getSignature = require('./GetSignature.js');
  13. const OBSupload = function (filePath){
  14. const fileName = 'talent_upload/115'; //指定上传到OBS桶中的对象名
  15. // const fileName = '005';
  16. const OBSPolicy = { //设定policy内容
  17. "expiration": "2089-12-31T12:00:00.000Z",
  18. "conditions": [
  19. {"bucket": "horastar"}, //Bucket name
  20. // {"bucket": "goin"},
  21. { 'key': fileName}
  22. ]
  23. }
  24. const policyEncoded = getPolicyEncode(OBSPolicy); //计算policy编码值
  25. const signature = getSignature(policyEncoded, config.SecretKey); //计算signature
  26. uni.uploadFile({
  27. //url: config.EndPoint,
  28. url: config.EndPoint,
  29. filePath: filePath,
  30. name: 'file',
  31. formData: {
  32. 'AccessKeyID': config.AccessKeyId,
  33. 'policy': policyEncoded,
  34. 'signature': signature,
  35. 'key':fileName,
  36. },
  37. success: function(res){
  38. console.log(res.statusCode); //打印响应状态码
  39. if(res.statusCode=='204'){
  40. console.log('上传图片成功', res)
  41. wx.showToast({
  42. title: '上传成功',
  43. icon: '成功'
  44. });
  45. }
  46. else{
  47. console.log('上传图片失败', res)
  48. wx.showToast({
  49. title: '上传失败',
  50. icon: '失败'
  51. });
  52. }
  53. },
  54. fail: function(e){
  55. console.log(e);
  56. }
  57. })
  58. const obs_url = config.EndPoint + '/' + fileName; //用你自己的 bucket 名替换星号
  59. console.log(obs_url)
  60. return obs_url
  61. }
  62. module.exports = OBSupload;