patrickmichalina / onvif-rx

📹 Communicate with ONVIF devices and cameras in server and browser environments.
MIT License
22 stars 11 forks source link

400 'The requested action requires authorization' #32

Open benkas opened 3 years ago

benkas commented 3 years ago

In most methods the error is returned 400 'The requested action requires authorization'

const onvif = require("onvif-rx");

  const params = {
    deviceUrl: 'http://192.168.1.1/onvif/device_service',
    password: 'pass',
    username: 'user'
  };

 const device =  onvif.createManagedDeviceInNode(params)

device.api.Device.GetServiceCapabilities()
.toPromise()
.then(results => {
    results.match({ // results are wrapped in a managed object for safer processing
        ok: success => console.log(success.json), // successful response object
        fail: railure => console.log(railure.status, railure.statusMessage) // request failure object
    })
})
/*
**The result is:**
{ Capabilities: 
   { Network: { _attributes: [Object] },
     Security: { _attributes: [Object] },
     System: { _attributes: [Object] } } }
*/

device.api.Device.GetUsers()
.toPromise()
.then(results => {
    results.match({ // results are wrapped in a managed object for safer processing
        ok: success => console.log(success.json), // successful response object
        fail: railure => console.log(railure.status, railure.statusMessage) // request failure object
    })
})

/*
**The result is:**
400 'The requested action requires authorization'
*/