main.swift 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import gRPC
  2. let address = "localhost:8001"
  3. let host = "foo.test.google.fr"
  4. let message = gRPC.ByteBuffer(string:"hello gRPC server!")
  5. gRPC.initialize()
  6. print("gRPC version", gRPC.version())
  7. do {
  8. let c = gRPC.Client(address:address)
  9. let steps = 30
  10. for i in 0..<steps {
  11. let method = (i < steps-1) ? "/hello" : "/quit"
  12. let metadata = Metadata(pairs:[MetadataPair(key:"x", value:"xylophone"),
  13. MetadataPair(key:"y", value:"yu"),
  14. MetadataPair(key:"z", value:"zither")])
  15. let response = c.performRequest(host:host,
  16. method:method,
  17. message:message,
  18. metadata:metadata)
  19. print("status:", response.status)
  20. print("statusDetails:", response.statusDetails)
  21. if let message = response.message {
  22. print("message:", message.string())
  23. }
  24. let initialMetadata = response.initialMetadata!
  25. for i in 0..<initialMetadata.count() {
  26. print("INITIAL METADATA ->", initialMetadata.key(index:i), ":", initialMetadata.value(index:i))
  27. }
  28. let trailingMetadata = response.trailingMetadata!
  29. for i in 0..<trailingMetadata.count() {
  30. print("TRAILING METADATA ->", trailingMetadata.key(index:i), ":", trailingMetadata.value(index:i))
  31. }
  32. if (response.status != 0) {
  33. break
  34. }
  35. }
  36. }
  37. gRPC.shutdown()
  38. print("Done")