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 Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please — but make sure to vote on the bug!
Your email address:
MUST BE VALID
Solve the problem:
24 + 7 = ?
Subscribe to this entry?

 
 [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

Add a Patch

Pull Requests

Add a Pull Request

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 May 01 21:01:29 2024 UTC