创建客户端连接
Python® 客户端和 MATLAB® Production Server™ 实例之间的连接封装在 matlab.production_server.client.MWHttpClient
对象中。您使用 MWHttpClient
构造函数来实例化客户端和服务器之间的连接。
MWHttpClient()
构造函数具有以下签名:
client.MWHttpClient(url[,timeout_ms=timeout,ssl_context=ssl_context])
构造函数具有以下参量:
url
- 客户端连接的服务器实例的 URL。如果 URL 指向本地服务器实例,则 URL 必须包含该服务器实例的端口号。注意
URL 仅包含服务器实例的主机名和端口信息。
timeout_ms
- 客户端在超时之前等待响应的时间(以毫秒为单位)。默认超时间隔为两分钟。
ssl_context
-ssl.SSLContext
对象包含有关用于与服务器进行 HTTPS 通信的 SSL 协议的信息。如果服务器实例的 URL 包含 HTTPS,则此参量是必需的。默认不使用 SSL。
注意
MWHttpClient
对象不是线程安全的。如果您正在开发多线程应用程序,请为每个线程创建一个新的 MWHttpClient
对象。
创建默认连接
要创建默认连接,请为服务器实例 URL 提供一个值。timeout_ms
参量有一个默认值,因此您不需要指定时间。默认使用 HTTP 进行客户端与服务器通信。此代码示例显示如何使用两分钟的默认超时时间连接到名为 mps_host
的主机上的服务器实例。
import matlab
from production_server import client
my_client = client.MWHttpClient("http://mps_host:9910")
配置连接超时
您可以通过为 timeout_ms
参量提供值来指定连接超时。此代码示例指定一分钟的超时时间。
import matlab
from production_server import client
my_client = client.MWHttpClient("http://mps_host:9910",timeout_ms=60000)
使用 HTTPS 进行客户端与服务器通信
MATLAB Production Server Python 客户端 API 使用 Python ssl
库来支持与服务器的 HTTPS 通信。您可以通过提供 Python ssl.SSLContext
类的对象作为 ssl_context
参量的值来指定 SSL 连接属性。您可以将参数传递给 ssl.SSLContext
对象来设置要使用的 SSL 协议。有关服务器支持的 SSL 协议的更多信息,请参阅 ssl-protocols。
使用 Python 客户端 API 的 HTTPS 通信仅受 Windows® 和 Linux® 平台支持。macOS 不受支持。
此代码示例将 SSL 协议设置为 PROTOCOL_TLS_CLIENT
。将协议设置为 PROTOCOL_TLS_CLIENT
需要您提供有关服务器 SSL 证书的详细信息。
import ssl
import matlab
from production_server import client
context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
context.load_verify_locations(cafile='<path_to_server_SSL_certificate_location>\cert_file.pem')
my_client = client.MWHttpClient("https://mps_host:9920",ssl_context=context)
另请参阅
matlab.production_server.client.MWHttpClient