Azure China 使用golang sdk访问

0.准备

1.安装azure cli
2.确保powershell的版本在5.0以上

1.切换及登录

az cloud set -n AzureChinaCloud
az login #输入后会弹出登录界面

2. 创建RBAC

az ad sp create-for-rbac -n "testrole" --role Contributor --scopes /subscriptions/{subId}/resourceGroups/{resourceGroup}

3.Golang SDK(环境变量模式)

    os.Setenv("AZURE_TENANT_ID", tenantId)
	os.Setenv("AZURE_CLIENT_ID", clientId)
	os.Setenv("AZURE_CLIENT_SECRET", clientSecret)

	clientOption := arm.ClientOptions{policy.ClientOptions{}, nil, false, arm.AzureChina}
	credential, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil || credential == nil {
		log.Error("[NewAzureLocalClient] Failed to Generate AzureCredential")
		return nil
	}
	virtualMachinesClient := armcompute.NewVirtualMachinesClient(subscriptionId, credential, 	&clientOption)
	if virtualMachinesClient == nil {
		log.Error("[NewAzureLocalClient] Failed to Generate VirtualMachinesClient")
		return nil
	}

4.Golang SDK(认证模式)

	credential, err := azidentity.NewClientSecretCredential(tenantId, clientId, clientPass, loginOption)
	if err != nil || credential == nil {
		log.Error("[NewAzureLocalClient] Failed to Generate AzureCredential")
		return nil
	}
	virtualMachinesClient := armcompute.NewVirtualMachinesClient(subscriptionId, credential, 	&clientOption)
	if virtualMachinesClient == nil {
		log.Error("[NewAzureLocalClient] Failed to Generate VirtualMachinesClient")
		return nil
	}

5.Golang SDK(代理模式)

// 设置代理访问
	proxy, _ := url.Parse("http://xx.xx.xx.xx:9090")
	defaultTransport := &http.Transport{
		Proxy: http.ProxyURL(proxy),
		DialContext: (&net.Dialer{
			Timeout:   30 * time.Second,
			KeepAlive: 30 * time.Second,
		}).DialContext,
		ForceAttemptHTTP2:     true,
		MaxIdleConns:          100,
		IdleConnTimeout:       90 * time.Second,
		TLSHandshakeTimeout:   10 * time.Second,
		ExpectContinueTimeout: 1 * time.Second,
		TLSClientConfig: &tls.Config{
			MinVersion: tls.VersionTLS12,
		},
	}
	defaultHTTPClient := &http.Client{
		Transport: defaultTransport,
	}
	clientOptions := azcore.ClientOptions{}
	clientOptions.Transport = defaultHTTPClient

	// 非环境变量编程模式
	loginOption := &azidentity.ClientSecretCredentialOptions{clientOptions, azidentity.AzureChina}
	credential, err := azidentity.NewClientSecretCredential(tenantId, clientId, clientPass, loginOption)
	if err != nil || credential == nil {
		log.Error("[NewAzureLocalClient] Failed to Generate AzureCredential")
		return nil
	}
	armOption := &arm.ClientOptions{clientOptions, nil, false, arm.AzureChina}
	virtualMachinesClient := armcompute.NewVirtualMachinesClient(subscriptionId, credential, armOption)
	if virtualMachinesClient == nil {
		log.Error("[NewAzureLocalClient] Failed to Generate VirtualMachinesClient")
		return nil
	}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,您可以按照以下步骤使用微软的Azure SDK生成图片接口: 1. 首先,您需要安装Azure SDK。您可以从Azure官网下载SDK并按照安装向导进行安装。 2. 在安装完成后,您需要创建Azure帐户并创建一个计算机视觉服务。 3. 在您的代码中,您需要引入Azure计算机视觉服务的SDK包。例如,如果您使用的是Java语言,您需要在您的pom.xml文件中添加以下依赖项: ``` <dependency> <groupId>com.microsoft.azure</groupId> <artifactId>azure-cognitiveservices-vision-computervision</artifactId> <version>2.0.0</version> </dependency> ``` 4. 在您的代码中,您需要使用您的Azure帐户信息进行身份验证。例如,如果您使用的是Java语言,您可以使用以下代码进行身份验证: ``` ComputerVisionClient client = ComputerVisionManager.authenticate(AzureRegion.fromName("your_region"), "your_subscription_key"); ``` 5. 接下来,您需要准备您要生成图片的数据。例如,如果您要生成一张图片,您可以将其保存在本地文件中并将其转换为字节数组。 6. 最后,您可以调用Azure计算机视觉服务的“generateThumbnail”方法来生成缩略图。例如,如果您使用的是Java语言,您可以使用以下代码来生成缩略图: ``` byte[] imageData = Files.readAllBytes(Paths.get("your_image_file_path")); ByteArrayInputStream inputStream = new ByteArrayInputStream(imageData); byte[] thumbnailData = client.generateThumbnailInStream(50, 50, inputStream, true); ``` 以上就是使用微软的Azure SDK生成图片接口的步骤。希望对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值