Thread Rating:
  • 325 Vote(s) - 2.75 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Curl ORB でIDとパスワードを必ず渡したい
12-18-2012, 06:04 PM,
#1
Curl ORB でIDとパスワードを必ず渡したい
サーバーとのやりとりの間にセッションタイムアウトをさせたくないので、
アクセスのたびにログインする仕組みを考えています。

ユーザーIDとパスワードをログイン時にグローバル変数に保持して、
CurlORB のサービスを呼ぶときに、必ず引数のDTOの中にID・PASSを指定することで実現させようと思っていますが、
プログラマに意識させずに、AOPのような感じでサービスを呼ぶときに自動的にDTOにID・PASSを詰めることはできないでしょうか。
12-18-2012, 06:31 PM,
#2
RE: Curl ORB でIDとパスワードを必ず渡したい
インターセプターを利用すれば可能です。
サービスの引数として、ID・パスワードを保持するための基本となるDTOを必ず利用するとよいかと思います。

Code:
|| インターセプター
{define-class public InitializeDtoIntercepto {inherits ClientInterceptor}
{constructor public {default
client-filter:{proc-type {AbstractClient}:bool} ={fn client => true}
}
{construct-super client-filter = client-filter}
}
{method protected open {handle-before-request ||before-advice
http-request-headers:#HttpRequestHeaders,
orb-request-hearders:#HashTable,
method:Method,
arguments:#FastArray
}:(http-request-headers:#HttpRequestHeaders, orb-request-headers:#HashTable)
{if-debuggable {output method.defining-class.name, ".", method.name }}
{if-non-null args = arguments then
{for arg in args do
{type-switch arg
||基本DTOにIDとパスワードを設定
case base:BaseDto do
set base.id = id
set base.pass = pass
}
}
}
def (ret-http-request-headers:#HttpRequestHeaders, ret-orb-request-headers:#HashTable) =
{super.handle-before-request
http-request-headers,
orb-request-hearders,
method ,
arguments
}
{return ret-http-request-headers, ret-orb-request-headers}
}

}
||インターセプターの登録
{register-orb-interceptors
{InitializeDtoInterceptor}
}


バージョンが古いですが、インターセプターの説明は下記にあります。
http://developers.curlap.com/re-referenc...eptor.html
12-19-2012, 08:28 PM,
#3
RE: Curl ORB でIDとパスワードを必ず渡したい
もしくは、handle-before-request メソッドの引数であるorb-request-headersに追加することで、サーバサイドのFilterなどで受け取ることもできます。


Possibly Related Threads...
Thread Author Replies Views Last Post
  Curl execute Oracle database procedure NamDH 3 4,054 04-21-2017, 03:40 PM
Last Post: tdeng
  TLS通信下でCould not deserialize the object from Curl.発生 MIT 3 4,767 03-10-2017, 08:35 AM
Last Post: MIT
  Protecting SSL private key in a Curl script aensys 1 2,363 02-10-2017, 02:02 PM
Last Post: heavybugtracker
  curl library 7.36.0: curl_easy_perform() function call failed when used for getting a joezhao 1 3,632 10-19-2016, 09:41 AM
Last Post: dyoshida
  Curl IDE からのランチャが見つかりません umemura 1 3,771 06-30-2016, 10:12 AM
Last Post: umemura
  Curl RTE Install smtit 1 2,738 05-06-2016, 12:36 PM
Last Post: dice256
  Curl RTE Command line smtit 1 2,917 04-19-2016, 09:35 AM
Last Post: dice256
  What OS that CURL can support for deloyment? tiennv 1 4,574 08-22-2015, 02:12 AM
Last Post: tdeng
  Curl RTEのPPAPIプラグインについて でり 1 4,398 06-09-2015, 11:03 AM
Last Post: でり
  cURL Client app Michael-2015 1 3,852 04-16-2015, 12:27 PM
Last Post: dyoshida
Forum Jump:


Users browsing this thread:
4 Guest(s)

MyBB SQL Error

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1017 - Can't find file: 'mybb_threadviews' (errno: 2)
Query:
INSERT INTO mybb_threadviews (tid) VALUES('670')