php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #32353 SoapServer onServerRequest() 'event'
Submitted: 2005-03-17 13:58 UTC Modified: 2016-12-30 22:46 UTC
From: wb at pro-net dot co dot uk Assigned:
Status: Open Package: SOAP related
PHP Version: 5.0.3 OS: FreeBSD 5.2.1
Private report: No CVE-ID: None
View Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
If you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: wb at pro-net dot co dot uk
New email:
PHP Version: OS:

 

 [2005-03-17 13:58 UTC] wb at pro-net dot co dot uk
Description:
------------
I would like to be able to intercept the SoapServer when it is about to call an assigned function/method to handle a request.

This would allow people to check methods before they are run and could then, for example, check that that the request service is currently enabled/active and if not throw a SoapFault which would then be sent as the soap responce for that method.

If no SoapFault was thrown then it would carry and run the request as normal.

An example follows.

Reproduce code:
---------------
<?php
class NewSoapServer extends SoapServer {

    /**
     * @desc Overload SoapServer onServerRequest method
     * @return void
     *
     * Check to make sure that the requested service is
     * not disabled. If the service is disabled then a
     * SoapFaule will be thrown.
     */
    function onServerRequest ($name, $args) {
        if(Application::isServiceDisabled($name)){
            throw new SoapFault("Server","The '".$name."' service is currently disabled.");
        }
    }

}

?>


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2016-12-30 22:46 UTC] cmb@php.net
-Package: Feature/Change Request +Package: SOAP related
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Wed Dec 04 09:01:30 2024 UTC