Tüm Ürünler
Search
Belge Merkezi

Short Message Service:Java SDK

Son Güncelleme:Oct 04, 2026

Java için Alibaba Cloud SMS SDK, Java uygulamalarından SMS API işlemlerini çağırma sürecini basitleştirir. SDK; mesaj gönderme, imza ve şablon yönetimi, gönderim kayıtlarını sorgulama ve nitelik yönetimi işlevlerini destekler.

SDK; mesaj gönderme, imza ve şablon yönetimi, gönderim kayıtlarını sorgulama ve nitelik yönetimi işlevlerini destekler.

Kurulum

Sistem gereksinimleri

Maven ile yükleme

<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>dysmsapi20180501</artifactId>
    <!-- Replace 'the-latest-version' with the latest version number: https://mvnrepository.com/artifact/com.aliyun/dysmsapi20180501 -->
  <version>the-latest-version</version>
</dependency>

Kimlik doğrulamayı yapılandırın

Adım 1: RAM kullanıcısı oluşturun ve izin verin

Önemli

Kök hesabınız tüm izinlere sahiptir. API çağrıları ve rutin işletim ile bakım (O&M) işlemleri için bir RAM kullanıcısı kullanın. Daha fazla bilgi için bkz. Genel bakış.

  • RAM kullanıcısı oluşturun: Kullanıcı Oluştur sayfasına gidin. Gerekli bilgileri belirtin, Access Configuration için Permanent AccessKey seçeneğini belirleyin ve ardından OK öğesine tıklayın. Daha sonra kullanmak üzere AccessKey'inizi kaydedin.

  • RAM Kullanıcısına izin atayın: Kullanıcılar sayfasına gidin. Oluşturduğunuz RAM kullanıcısını bulun ve Attach Policy sütunundaki Actions öğesine tıklayın. Policy arama kutusuna AliyunDysmsFullAccess yazın, ilgili ilkeyi seçin ve ardından OK öğesine tıklayın.

Not
  • AliyunDysmsFullAccess*: SMS hizmetini yönetmek için tam izinler verir.

  • AliyunDysmsReadOnlyAccess: SMS hizmetine erişmek için salt okunur izinler verir.

  • Özel bir ilke oluşturmak için bkz. RAM yetkilendirmesi.

Adım 2: Erişim kimlik bilgilerini yapılandırın

AccessKey çiftinizi ortam değişkenlerinde saklayın. Bkz. Linux, macOS ve Windows üzerinde ortam değişkenlerini yapılandırma.

Not
  • AccessKey çiftinizi kod içinde sabit olarak tanımlamayın. Ortam değişkenlerinden alın.

  • Örnek kod, ALIBABA_CLOUD_ACCESS_KEY_ID ve ALIBABA_CLOUD_ACCESS_KEY_SECRET ortam değişkenlerini kullanır.

Güvenlik en iyi uygulamaları

  • Kimlik bilgilerini ortam değişkenleri veya bir anahtar yönetim hizmeti kullanarak saklayın.

  • AccessKey çiftinizi düzenli aralıklarla döndürün.

  • RAM Kullanıcılarına yalnızca gerekli minimum izinleri vererek en az ayrıcalık ilkesini uygulayın.

  • Günlüklerde kimlik bilgisi bilgilerini yazdırmayın.

  • Üretim ortamlarında kök hesap kimlik bilgileriniz yerine bir RAM Rolü kullanın.

Hızlı başlangıç

Örnek kod

Bu örnekte, bir mesaj göndermek için SMS API'si çağrılır. Yorumlarda belirtildiği gibi yer tutucu değerleri değiştirin.

package com.aliyun.sample;

import com.aliyun.teaopenapi.models.Config;
import com.aliyun.dysmsapi20180501.Client;
import com.aliyun.dysmsapi20180501.models.SendMessageToGlobeRequest;
import com.aliyun.dysmsapi20180501.models.SendMessageToGlobeResponse;
import static com.aliyun.teautil.Common.toJSONString;

public class Sample {
    public static Client createClient() throws Exception {
        Config config = new Config()
                // Configure your AccessKey ID. Make sure the ALIBABA_CLOUD_ACCESS_KEY_ID environment variable is configured.
                .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                // Configure your AccessKey secret. Make sure the ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variable is configured.
                .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));

        // Configure the endpoint.
        config.endpoint = "dysmsapi.ap-southeast-1.aliyuncs.com";

        return new Client(config);
    }

    public static void main(String[] args) throws Exception {
        // Initialize the request client.
        Client client = Sample.createClient();

        // Create a request object and specify the parameter values.
        SendMessageToGlobeRequest sendSmsRequest = new SendMessageToGlobeRequest()
                .setTo("<YOUR_VALUE>")
                .setMessage("<YOUR_VALUE>");

        // Obtain the response object.
        SendMessageToGlobeResponse sendSmsResponse = client.sendMessageToGlobe(sendSmsRequest);

        // The response includes the body and headers from the server.
        System.out.println(toJSONString(sendSmsResponse));
    }
}

Örnek kodu indirin

Örnek kodu doğrudan indirin ve çalıştırın.

  1. SendMessageToGlobe sayfasına gidin.

  2. Parametreler sekmesinde gerekli parametreleri belirtin. Örnek değerler:

  • To: 88691567****

  • Message: This is a test message.

  1. Sağ taraftaki SDK Örnek Kodu sekmesinde SDK sürümü olarak V2.0 ve dil olarak Java (Java veya Java eşzamansız) seçeneklerini belirleyin. Örnek kodu indirmek için Projeyi İndir öğesine tıklayın.

  2. Paketi çıkarın, projeyi IDE'nizde açın, bağımlılıkların yüklenmesini bekleyin ve src/main/java/com/aliyun/sample/Sample.java dosyasını açın.

Projeyi çalıştırın

Projeyi çalıştırın. Örnek yanıt:

{
  "headers": {
    "date": "Tue, 24 Oct 2023 07:47:17 GMT",
    "content-type": "application/json;charset=utf-8",
    "content-length": "263",
    "connection": "keep-alive",
    "keep-alive": "timeout=25",
    "access-control-allow-origin": "*",
    "access-control-expose-headers": "*",
    "x-acs-request-id": "97B1D7B6-F2F6-3A50-97BC-A90B43EC962F",
    "x-acs-trace-id": "29c11fe4c778b74774d5f5602f0e7975",
    "etag": "2a+mcDRTDkXqx9VF7b6U57Q3"
  },
  "statusCode": 200,
  "body": {
    "ResponseCode": "OK",
    "NumberDetail": {
    "Region": "Taiwan",
    "Country": "Taiwan, Province of China",
    "Carrier": "FarEasTone"
  },
    "RequestId": "97B1D7B6-F2F6-3A50-97BC-A90B43EC962F",
    "Segments": "1",
    "ResponseDescription": "OK",
    "To": "88691567****",
    "MessageId": "191921698133637273"
  }
}

En iyi uygulamalar

Performans optimizasyonu

  • Ek yükü azaltmak için bağlantı havuzu ile HTTP bağlantılarını yeniden kullanın.

  • Yüksek frekanslı senaryolar için eşzamansız çağrılar kullanın.

  • Hizmetinizin engellenmesini önlemek için zaman aşımları ayarlayın.

  • Toplu işlemler için yerleşik toplu işlem özelliğini kullanın.

Güvenlik önerileri

  • API ile iletişim kurarken her zaman HTTPS kullanın.

  • Cep telefonu numaraları veya doğrulama kodları gibi hassas verileri günlüklemeyin.

  • Kötü niyetli girdileri önlemek için kullanıcı tarafından girilen cep telefonu numaralarını doğrulayın.

  • Uzun vadeli kimlik bilgileri yerine Alibaba Cloud Security Token Service'ten (STS) geçici kimlik bilgilerini tercih edin.

Kaynak yönetimi

  • Kullanılmayan istemci bağlantılarını kapatın.

  • Beklenen eşzamanlılık düzeyine uygun olacak şekilde iş parçacığı havuzunu boyutlandırın.

  • Saniye başına sorgu (QPS) sınırlarını aşmamak için API çağrısı sıklığını izleyin.

Referanslar