日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

文件URL處理

使用阿里云視覺智能開放平臺服務時,需要傳入文件URL,視覺智能平臺根據傳入的文件URL對文件進行智能處理。本文介紹如何處理本地文件或網絡文件鏈接。

背景信息

阿里云視覺智能開放平臺服務的接口響應時間依賴文件的下載時間,為了保證被檢測文件不會下載超時,建議您使用阿里云OSS存儲文件。

說明

阿里云視覺智能開放平臺視覺AI能力API接入、接口使用或問題咨詢等,請通過釘釘群(23109592)加入阿里云視覺智能開放平臺咨詢群聯系我們。

場景一:上海地域OSS文件

  1. 登錄OSS管理控制臺

  2. 創建存儲空間

    創建Bucket選擇區域時,需要選擇與視覺智能開放平臺對應服務能力相同的區域,當前視覺智能開放平臺各服務支持的區域為華東2(上海)

    說明

    如果您的OSS所在地域不是華東2(上海),請參見場景二:非上海地域OSS文件進行調用。

  3. 上傳本地文件到OSS服務。

    具體操作請參見上傳文件

  4. 查看文件URL。

    在已上傳圖片列表中,單擊詳情查看并復制圖片URL。

場景二:非上海地域OSS文件

對于非OSS文件,或者您的OSS所屬地域不是華東2(上海),推薦您使用SDK進行調用。

配置環境變量

配置環境變量ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET

重要
  • 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維,具體操作,請參見創建RAM用戶

  • 請不要將AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。

  • Linux和macOS系統配置方法

    1. 在IntelliJ IDEA中打開終端Terminal。

    2. 執行以下命令,配置環境變量。

      <access_key_id>需替換為您RAM用戶的AccessKey ID,<access_key_secret>替換為您RAM用戶的AccessKey Secret。如果后續需要進行更多權限相關的配置,具體操作請參見使用RAM Policy控制訪問權限

      export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id> 
      export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret>
  • Windows系統配置方法

    新建環境變量文件,添加環境變量ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET,并寫入已準備好的AccessKey ID和AccessKey Secret。然后重啟Windows系統。本操作以Windows 10為例進行說明。

    1. 打開文件資源管理器,在此電腦上右鍵單擊屬性。

    2. 在右側導航欄,單擊高級系統配置

    3. 系統屬性對話框的高級頁簽下,單擊環境變量

    4. 環境變量對話框中,單擊新建(W)image.png

    5. 在彈出的新建系統變量對話框中,添加環境變量ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET,并寫入已準備好的AccessKey ID和AccessKey Secret。

    6. 重啟Windows系統,使配置生效。

方式一(推薦方式)

使用各語言對應的新版SDK,目前新版SDK已經支持文件在本地或者非上海地域OSS文件,與文件在同地域的區別在于,需要使用xxxAdvanceRequest將文件以stream形式通過ImageURLObject參數(注意:這里的參數會隨語言的不同參數的Object值命名會有所不同,請參考調用能力文檔看請求參數的命名。)傳入進行后續調用,詳情請參見各語言SDK參考。 

方式二

如果您無法使用新版SDK,可使用viapiutils顯式生成URL,以下為各個語言對應的操作步驟。

重要

該方式使用阿里云視覺智能開放平臺官方OSS-Bucket作為臨時存儲,僅為方便用戶方便調試接口使用,文件存儲有效期為1天。該方式非官方推薦方式,不保證SLA,該方式是所有用戶共享總共1萬QPS。如果在高峰時段,可能會因為過多用戶使用OSS存儲,而導致您調用接口失敗。所以請勿在生產環境使用視覺智能開放平臺官方的OSS-Bucket作為存儲。此上傳接口不推薦付費用戶使用

例如,您購買了某個API 100QPS的使用服務,但如果仍使用免費OSS-Bucket,則仍將與其他用戶共享總共1萬QPS的OSS并發使用量,可能因OSS并發量受限,而無法使用到100QPS的調用量上限。

Java SDK

請安裝如下Java SDK包。要求Java8及以上環境,如不滿足SDK版本所需環境要求請升級Java版本。

<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>viapi-utils</artifactId>
    <version>1.0.2</version>
</dependency>

具體代碼示例如下。

import com.aliyun.com.viapi.FileUtils;
public class Main {
    public static void main(String[] args) throws Exception {
        // 創建AccessKey ID和AccessKey Secret,請參考http://bestwisewords.com/document_detail/175144.html。
        // 如果您使用的是RAM用戶的AccessKey,還需要為RAM用戶授予權限AliyunVIAPIFullAccess,請參考http://bestwisewords.com/document_detail/145025.html。
        // 從環境變量讀取配置的AccessKey ID和AccessKey Secret。運行代碼示例前必須先配置環境變量。      
        String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");     
        String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
        // 場景一,使用本地文件
        String file = "/tmp/bankCard.png";
        // 場景二,使用任意可訪問的url
        // String file = "https://viapi-test-bj.oss-cn-beijing.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeBankCard/yhk1.jpg";
        FileUtils fileUtils = FileUtils.getInstance(accessKeyId, accessKeySecret);
        String ossUrl = fileUtils.upload(file);
        // 生成的url,可用于調用視覺智能開放平臺的能力
        System.out.println(ossUrl);
    }
}

Python SDK

請安裝如下Python SDK。最低環境要求Python3及以上環境,如不滿足SDK版本所需環境要求請升級Python版本。

pip install oss2
pip install aliyun-python-sdk-viapiutils
pip install viapi-utils

具體代碼示例如下。

from viapi.fileutils import FileUtils
# 創建AccessKey ID和AccessKey Secret,請參考http://bestwisewords.com/document_detail/175144.html。
# 如果您用的是RAM用戶的AccessKey,還需要為RAM用戶授予權限AliyunVIAPIFullAccess,請參考http://bestwisewords.com/document_detail/145025.html。
# 從環境變量讀取配置的AccessKey ID和AccessKey Secret。運行代碼示例前必須先配置環境變量。
file_utils = FileUtils(os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'], os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET'])
# 場景一,使用本地文件,第一個參數為文件路徑,第二個參數為生成的url后綴,但是并不能通過這種方式改變真實的文件類型,第三個參數True表示本地文件模式
# oss_url = file_utils.get_oss_url("/tmp/bankCard.png", "png", True)
# 場景二,使用任意可訪問的url,第一個url,第二個參數為生成的url后綴,但是并不能通過這種方式改變真實的文件類型,第三個參數False表示非本地文件模式
oss_url = file_utils.get_oss_url("https://viapi-test-bj.oss-cn-beijing.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeBankCard/yhk1.jpg", "jpg", False)
# 生成的url,可用于調用視覺智能開放平臺的能力
print(oss_url)

Node.js SDK

推薦使用NPM工具安裝依賴包。 最低環境要求Node 8.x以上,如不滿足SDK版本所需環境要求請升級Node版本。

npm install @alicloud/viapi-utils@^1.0.0 --save

JavaScript代碼示例如下。

const ViapiUtil = require('@alicloud/viapi-utils');
// 創建AccessKey ID和AccessKey Secret,請參考http://bestwisewords.com/document_detail/175144.html。
// 如果您用的是RAM用戶AccessKey,還需要為RAM用戶授予權限AliyunVIAPIFullAccess,請參考http://bestwisewords.com/document_detail/145025.html。
// 從環境變量讀取配置的AccessKey ID和AccessKey Secret。運行示例前必須先配置環境變量。
let accessKeyId =  process.env.ALIBABA_CLOUD_ACCESS_KEY_ID;
let accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET;
// 場景一,使用本地文件
let file = "/tmp/bankCard.png";
// 場景二,使用任意可訪問的url
// let file = "https://viapi-test-bj.oss-cn-beijing.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeBankCard/yhk1.jpg";
ViapiUtil.default.upload(accessKeyId, accessKeySecret, file)
  .then(function(ossUrl) {
    // 生成的url,可用于調用視覺智能開放平臺的能力
    console.log(ossUrl);
  })
  .catch(function(err) {
    console.log(err);
  });           

TypeScript代碼示例如下。

import ViapiUtil from '@alicloud/viapi-utils';
export default class Client {
  static async main(): Promise<void> {
    // 創建AccessKey ID和AccessKey Secret,請參考http://bestwisewords.com/document_detail/175144.html。
    // 如果您用的是RAM用戶AccessKey,還需要為RAM用戶授予權限AliyunVIAPIFullAccess,請參考http://bestwisewords.com/document_detail/145025.html。
    // 從環境變量讀取配置的AccessKey ID和AccessKey Secret。運行示例前必須先配置環境變量。
    let accessKeyId: string = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID;
    let accessKeySecret: string = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET;
    // 場景一,使用本地文件
    let file: string = "/tmp/bankCard.png";
    // 場景二,使用任意可訪問的url
    // let file: string = "https://viapi-test-bj.oss-cn-beijing.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeBankCard/yhk1.jpg";
    let ossUrl: string = await ViapiUtil.upload(accessKeyId, accessKeySecret, file);
    // 生成的url,可用于調用視覺智能開放平臺的能力
    console.log(ossUrl);
  }
}
Client.main();    

PHP SDK

推薦使用composer工具安裝依賴包。最低環境要求PHP 5.6, 如不滿足SDK版本所需環境要求請升級PHP版本。(暫不支持PHP 8)

composer require alibabacloud/viapi-utils

具體代碼示例如下。

<?php
namespace Alibabacloud\SDK;
use AlibabaCloud\SDK\ViapiUtils\ViapiUtils;
class Client {
    public static function main() {
        // 創建AccessKey ID和AccessKey Secret,請參考http://bestwisewords.com/document_detail/175144.html。
        // 如果您用的是RAM用戶的AccessKey,還需要為RAM用戶授予權限AliyunVIAPIFullAccess,請參考http://bestwisewords.com/document_detail/145025.html。
        // 從環境變量讀取配置的AccessKey ID和AccessKey Secret。運行示例前必須先配置環境變量。    
        $accessKeyId = getenv('ALIBABA_CLOUD_ACCESS_KEY_ID');      
        $accessKeySecret = getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET');
        // 場景一,使用本地文件
        // $file = "/tmp/bankCard.png";
        // 場景二,使用任意可訪問的url
        $file = "https://viapi-test-bj.oss-cn-beijing.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeBankCard/yhk1.jpg";
        $ossUrl = ViapiUtils::upload($accessKeyId, $accessKeySecret, $file);
        // 生成的url,可用于調用視覺智能開放平臺的能力
        echo $ossUrl;
    }
}
// 引入autoload.php
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}
Client::main(array_slice($argv, 1));

Go SDK

推薦使用Go工具安裝依賴包。最低環境要求必須不低于Go 1.15.x,如不滿足SDK版本所需環境要求請升級Go版本。

go get github.com/alibabacloud-go/viapi-utils/client

具體代碼示例如下。

package main
import (
    "fmt"
    "github.com/alibabacloud-go/tea/tea"
    viapiutil "github.com/alibabacloud-go/viapi-utils/client"
)
func main() {
    // 場景一,使用本地文件
    file := tea.String("/tmp/bankCard.png")
    // 場景二,使用任意可訪問的url
    // file := tea.String("https://viapi-test-bj.oss-cn-beijing.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeBankCard/yhk1.jpg")
    // 上傳成功后,返回上傳后的文件地址

    // 創建AccessKey ID和AccessKey Secret,請參考http://bestwisewords.com/document_detail/175144.html。
    // 如果您用的是RAM用戶的AccessKey,還需要為RAM用戶授予權限AliyunVIAPIFullAccess,請參考http://bestwisewords.com/document_detail/145025.html。
    // 從環境變量讀取配置的AccessKey ID和AccessKey Secret。運行示例前必須先配置環境變量。
    ossUrl, _err := viapiutil.Upload(tea.String(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")), tea.String(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")), file)
    if _err != nil {
        fmt.Println(_err)
    }
    // 生成的url,可用于調用視覺智能開放平臺的能力
    fmt.Println(*ossUrl)
}

.NET SDK

推薦使用Nuget工具安裝依賴包。最低環境要求net framework 4.5或.Net Core 2.0,如不滿足SDK版本所需環境要求請升級.NET版本。

dotnet add package AlibabaCloud.SDK.VIAPIUtils

具體代碼示例如下。

using System;
// dotnet add package AlibabaCloud.SDK.VIAPIUtils
using AlibabaCloud.SDK.VIAPI.Utils;
namespace viapitest
{
    class Program
    {
        static void Main(string[] args)
        {
            // 場景一,使用本地文件
            // string file = "/tmp/bankCard.png";
            // 場景二,使用任意可訪問的url
            string file = "https://viapi-test-bj.oss-cn-beijing.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeBankCard/yhk1.jpg";
            // 創建AccessKey ID和AccessKey Secret,請參考http://bestwisewords.com/document_detail/175144.html。
            // 如果您用的是RAM用戶的AccessKey,還需要為RAM用戶授予權限AliyunVIAPIFullAccess,請參考http://bestwisewords.com/document_detail/145025.html。
            // 從環境變量讀取配置的AccessKey ID和AccessKey Secret。運行示例前必須先配置環境變量。
            FileUtils fileobj = FileUtils.getInstance(Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
            string ossUrl = fileobj.Upload(file);
            // 生成的url,可用于調用視覺智能開放平臺的能力
            Console.WriteLine(ossUrl);
        }
    }
}

其他語言

如果非以上6種語言,您可以自行實現viapiutils的相關邏輯,具體操作步驟如下:

  1. 調用GetOssStsToken接口獲取臨時的OSS STS Token,該Token建議在后續業務一次性使用。具體操作,請參見請求簽名

    • 接口Action:GetOssStsToken

    • 接口版本號:2020-04-01

    • 域名:viapiutils.cn-shanghai.aliyuncs.com

    • 無業務參數

    • 返回數據

    名稱

    類型

    示例值

    描述

    AccessKeyId

    String

    STS.NTT2MimJtnhtStr14rzky****

    STS臨時Token的AccessKeyID字段。

    AccessKeySecret

    String

    9VoH2Q5s286TaA9yyfZHqXWezdq5qK4i6auR2Vd5****

    STS臨時Token的AccessKeySecret字段。

    SecurityToken

    String

    CAIShwN1q6Ft5B2yfSjIr5fh****...

    STS臨時Token的SecurityToken字段。

  2. 使用臨時的OSS STS Token,將文件上傳到阿里云視覺智能開放平臺官方OSS Bucket。具體操作,請參見OSS SDK示例

    使用OSS STS Token上傳文件到阿里云視覺智能開放平臺官方OSS Bucket,需要注意以下幾點:

    1. 上傳用到的OSS Bucket地域固定為cn-shanghai

    2. 上傳用到的OSS Bucket名固定為viapi-customer-temp

    3. 上傳的路徑前綴必須是您在步驟1中調用接口時所使用的AccessKeyId。

      例如,您在步驟1調用時用到的AccessKeyId為LTAxxxxxxxabc,此時傳到OSS后的地址路徑應該類似:LTAxxxxxxxabc/<uuid>/test.jpg。為了文件不相互覆蓋,建議您在路徑中加上<uuid>作為區分。

  3. 完成上傳后可獲取到OSS的URL地址,該地址用于后續接口請求。

    地址路徑應類似如下示例:

    http://viapi-customer-temp.oss-cn-shanghai.aliyuncs.com/LTAxxxxxxxabc/<uuid>/test.jpg
    說明

    該地址無法在瀏覽器直接打開或者直接訪問,您可以用它作為文件URL參數調用阿里云視覺智能開放平臺的算法。

此處以銀行卡識別(RecognizeBankCard)為例,為您介紹不同場景下如何實現viapiutils邏輯,調用其他算法接口請參考注釋修改代碼。