You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@openwhisk.apache.org by GitBox <gi...@apache.org> on 2019/12/06 05:41:32 UTC

[GitHub] [openwhisk] JiniousChoi opened a new issue #4764: How to invoke a web action for .json context extension via wsk command?

JiniousChoi opened a new issue #4764: How to invoke a web action for .json context extension via wsk command?
URL: https://github.com/apache/openwhisk/issues/4764
 
 
   #4712  Environment details:
   
   local deployment
   
   ## Steps to reproduce the issue:
   
   1.   make a simple raw HTTP web action in python
   ```
   def main(args):
       val = args['__ow_headers']
       print(args)
       return { "response": args,
                "val": val }
   ```
   
   2. try to invoke it with wsk command
   ```
   $ wsk action invoke -r cs/jin-test
   {
       "error": "The action did not return a dictionary."
   }
   ```
   
   3.  check out the activation log
   ```
   wsk activation get --last
       "logs": [
           "2019-12-06T04:11:54.832861208Z stderr: Traceback (most recent call last):",
           "2019-12-06T04:11:54.832914474Z stderr: File \"pythonrunner.py\", line 88, in run",
           "2019-12-06T04:11:54.832926486Z stderr: exec('fun = %s(param)' % self.mainFn, self.global_context)",
           "2019-12-06T04:11:54.832934019Z stderr: File \"<string>\", line 1, in <module>",
           "2019-12-06T04:11:54.832941Z    stderr: File \"__main__.py\", line 3, in main",
           "2019-12-06T04:11:54.833038393Z stderr: KeyError: '__ow_headers'"
       ],
   ```
   
   4. But it works with curl when invoked with .json context extension
   ```
   curl https://frisb.kakao.com/api/v1/web/jin.c/cs/jin-test.json
   {
     "response": {
       "__ow_body": "",
       "__ow_headers": {
         "accept": "*/*",
         "host": "controllers",
         "user-agent": "curl/7.54.0",
         "x-request-id": "e7e3d9a52c099c6a6e46bce11207d5a4"
       },
       "__ow_method": "get",
       "__ow_path": "",
       "__ow_query": ""
     },
     "val": {
       "accept": "*/*",
       "host": "controllers",
       "user-agent": "curl/7.54.0",
       "x-request-id": "e7e3d9a52c099c6a6e46bce11207d5a4"
     }
   ```
   
   ## What I want
   
   I'd love to know if there is a way for the wsk command to invoke a web action with context extensions. I learned that the default is .http in the docs and I wonder if there is no way for wsk to invoke an action other context extensions but .http.
   
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services