Müşteri Kullanımı
Node.js'de, Connect for Web ile kullandığınız aynı istemcileri kullanıyorsunuz, ancak
@connectrpc/connect-node üzerinden
bir taşıma ile, @connectrpc/connect-web yerine:
import { createClient } from "@connectrpc/connect";
import { createConnectTransport } from "@connectrpc/connect-node";
const transport = createConnectTransport({
httpVersion: "1.1",
baseUrl: "http://demo.connectrpc.com",
});
async function main() {
const client = createClient(ElizaService, transport);
const res = await client.say({
sentence: "Mutlu hissediyorum.",
});
console.log(res.sentence);
}
void main();
İstemciler hakkında (hata işleme, kesiciler ve başlıklar ile ek bilgileri erişim dahil) daha fazla bilgi için lütfen Web
dokümantasyonuna bakın.
İçten içe, @connectrpc/connect-node taşıma fonksiyonları,
fetch API yerine, yerleşik Node modülleri http
, https
ve http2
kullanır. HTTP/2 ile, istemciler
Connect, gRPC veya gRPC-Web protokolünü kullanabilir ve tüm RPC türlerini çağırabilir. HTTP 1.1 ile, gRPC
protokolü ve iki yönlü akış desteklenmez.
Connect
createConnectTransport()
fonksiyonu, Connect protokolü
için bir taşıma oluşturur.
Connect taşıması için en önemli seçenekler aşağıdaki gibidir:
import { createConnectTransport } from "@connectrpc/connect-node";
const transport = createConnectTransport({
// İstekler <baseUrl>/<package>.<service>/method şeklinde yapılacaktır
baseUrl: "https://demo.connectrpc.com",
// Node.js http API'sine hangi HTTP sürümünü kullanacağını söylemelisiniz.
httpVersion: "2",
// Kesiciler bu taşıma üzerinden çalışan tüm çağrılara uygulanır.
interceptors: [],
});
gRPC
createGrpcTransport()
fonksiyonu, gRPC protokolü için bir taşıma oluşturur.
gRPC taşıması için en önemli seçenekler aşağıdaki gibidir:
import { createGrpcTransport } from "@connectrpc/connect-node";
const transport = createGrpcTransport({
// İstekler <baseUrl>/<package>.<service>/method şeklinde yapılacaktır
baseUrl: "https://demo.connectrpc.com",
// Kesiciler bu taşıma üzerinden çalışan tüm çağrılara uygulanır.
interceptors: [],
});
gRPC taşıması HTTP/2'yi gerektirir.
gRPC-web
createGrpcWebTransport()
fonksiyonu, gRPC-web protokolü için bir Taşıma oluşturur.
Herhangi bir gRPC servisi, Envoy Proxy ile gRPC-web'e
sunulabilir. ASP.NET Core, gRPC-web'i bir middleware ile destekler.
Connect for Node ve connect-go
gRPC-web'i kutudan çıkar çıkmaz destekler.
import { createGrpcWebTransport } from "@connectrpc/connect-node";
const transport = createGrpcWebTransport({
// İstekler <baseUrl>/<package>.<service>/method şeklinde yapılacaktır
baseUrl: "https://demo.connectrpc.com",
// Node.js http API'sine hangi HTTP sürümünü kullanacağını söylemelisiniz.
httpVersion: "2",
// Kesiciler bu taşıma üzerinden çalışan tüm çağrılara uygulanır.
interceptors: [],
});