[
https://issues.apache.org/jira/browse/THRIFT-5535?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jens Geyer resolved THRIFT-5535.
--------------------------------
Fix Version/s: 0.17.0
Assignee: konpekicode (was: Jens Geyer)
Resolution: Fixed
> Ability to support connection on OpenHarmonyOS
> ----------------------------------------------
>
> Key: THRIFT-5535
> URL: https://issues.apache.org/jira/browse/THRIFT-5535
> Project: Thrift
> Issue Type: Improvement
> Components: Node.js - Library
> Affects Versions: 0.17.0
> Environment: HarmonyOS devices
> Reporter: konpekicode
> Assignee: konpekicode
> Priority: Minor
> Fix For: 0.17.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> Currently thrift can be run on Node.js. Hope it can also support creating TCP
> connection on OpenHarmonyOS.
> For example, we can get data from a web server as follows:
>
> {code:java}
> const connection = thrift.createOhosConnection(http.createHttp, host, 80, {
> protocol: TJSONProtocol,
> header: {
> 'Content-Type': 'application/json'
> },
> createHttp: http.createHttp
> }),
> client = thrift.createOhosClient(TAccountService, connection);
> const account = {
> uid: 1,
> name: 'hello'
> }
> console.info('requesting...')
> client.createAccount(account).then(() => {
> console.info('client createAccount:', account.uid);
> client.getAccount(account.uid).then((resp) => {
> console.info(`client getAccount: uid=${resp.uid},
> name=${resp.name}`);
> this.user = resp
> }).catch(e => {
> console.info(e)
> })
> }).catch(e => {
> console.info(e)
> }) {code}
>
> Maybe we can add 'ohos_connection.js' module under Node.js lib to achieve it.
> [Here|https://github.com/konpeki622/openHarmony-thrift-demo] is the demo. You
> can run it on [DevEco
> Studio|[https://developer.harmonyos.com/en/develop/deveco-studio/]], and the
> result after pressing button will be like the screenshot in README.
> For more information about OpenHarmonyOS see this
> [site|https://developer.harmonyos.com/en/].
--
This message was sent by Atlassian Jira
(v8.20.1#820001)